Assembly IDA“;无效操作数";修补时出错
我试图使用“汇编”选项修补IDA中的二进制文件,每次我输入一条带算术运算的指令来计算偏移量时,我都会收到一个Assembly IDA“;无效操作数";修补时出错,assembly,x86,patch,disassembly,ida,Assembly,X86,Patch,Disassembly,Ida,我试图使用“汇编”选项修补IDA中的二进制文件,每次我输入一条带算术运算的指令来计算偏移量时,我都会收到一个无效操作数错误。例如: mov [bp-4], bx 返回无效的操作数,而 mov ax, bx 工作 我尝试过使用指令的格式(例如包括wordptr,使用4h,等等),但似乎没有任何效果。有没有办法解决这个错误,或者输入字节码修补是唯一的选择?根据十六进制射线: 汇编程序命令仅支持少数处理器,仅支持少数指令。抱歉,我们不打算扩展此功能 Lame,我知道。有点晚了,但是尽
无效操作数
错误。例如:
mov [bp-4], bx
返回无效的操作数,而
mov ax, bx
工作
我尝试过使用指令的格式(例如包括wordptr
,使用4h
,等等),但似乎没有任何效果。有没有办法解决这个错误,或者输入字节码修补是唯一的选择?根据十六进制射线:
汇编程序命令仅支持少数处理器,仅支持少数指令。抱歉,我们不打算扩展此功能
Lame,我知道。有点晚了,但是尽管汇编对话框显示“无效操作数”,但如果您知道字节码,您可以使用更改字节。。。改为菜单选项。您可以使用OllyDbg将字节码组装成字节码(选择任意位置并点击空格),然后将其复制到IDA的“更改字节”对话框中作为解决方法。尝试
ebp
在那里,如果您处于32位模式,指针必须是32位1;如果是长模式,指针必须是64位值(rbp
)