je to jne 在装配
je to jne in assembly
我正在反汇编具有以下 je 函数的代码:
0F 84 FF 00 00 00
: je loc_00000105
我被指示通过将 je
修改为 jne
来绕过比较功能。这是一个奇怪的案例,因为我到处都遇到过这种情况:
74 F1
: jne loc_fffffff3
我可以通过将 74
更改为 75
来轻松更改:
75 F1
: jne loc_fffffff3
但是我真的很困惑我该如何改变:
0F 84 FF 00 00 00
: je loc_00000105
到 jne
任何帮助将不胜感激!
我试过更改:
0F
到 0E
0F
到 0B
等...
74
是 x86 短 je
操作码,0F 84
是近 je
操作码。
所以这个 je
-> jne
短跳转操作码补丁:
74
-> 75
相当于这些 je
-> jne
近跳操作码。
0F 84
-> 0F 85
这里有一些操作码表供参考:
这里有一个不错的 x86 指令集参考:
http://ref.x86asm.net/coder32.html
74 XX 和 75 XX 指令编码为 JE 和 JNE,跳转目标有 8 位相对偏移量。
0F 85 XX XX XX XX是JNE的指令编码,后跟32位偏移。
对应的JE指令为0F 84 XX XX XX XX。
我正在反汇编具有以下 je 函数的代码:
0F 84 FF 00 00 00
: je loc_00000105
我被指示通过将 je
修改为 jne
来绕过比较功能。这是一个奇怪的案例,因为我到处都遇到过这种情况:
74 F1
: jne loc_fffffff3
我可以通过将 74
更改为 75
来轻松更改:
75 F1
: jne loc_fffffff3
但是我真的很困惑我该如何改变:
0F 84 FF 00 00 00
: je loc_00000105
到 jne
任何帮助将不胜感激!
我试过更改:
0F
到 0E
0F
到 0B
等...
74
是 x86 短 je
操作码,0F 84
是近 je
操作码。
所以这个 je
-> jne
短跳转操作码补丁:
74
-> 75
相当于这些 je
-> jne
近跳操作码。
0F 84
-> 0F 85
这里有一些操作码表供参考:
这里有一个不错的 x86 指令集参考:
http://ref.x86asm.net/coder32.html
74 XX 和 75 XX 指令编码为 JE 和 JNE,跳转目标有 8 位相对偏移量。
0F 85 XX XX XX XX是JNE的指令编码,后跟32位偏移。
对应的JE指令为0F 84 XX XX XX XX。