4
我目前正在反向反汇编,偶然发现了一条我不明白的指令链: 给定的是一个对象指针,在esi
。ASM:添加0xFFFFFFFF
.text:00C20263 cmp dword ptr [esi+80h], 0
.text:00C2026A jnz short loc_C2027D
正如你可以看到,如果成员+0x80
不为0(成员为整数)的代码会跳转到00C2027D
:
.text:00C2027D add dword ptr [esi+80h], 0FFFFFFFFh
.text:00C20284 jnz short loc_C20291
这两个指令是那些我不真正了解。首先,该成员增加0xFFFFFFFF;但由于该成员不是0,该指令是否会超过32位整数的最大值? jnz
指令何时跳转?
有人可能会指出这两条指令的目的是什么?
非常感谢。这点完全有意义。 – Paranaix 2012-07-09 18:19:52
那么也许你应该把标记作为回答图标? – 2012-07-10 11:26:05
@MihaiLabo我很抱歉,因为我读了这个答案,我没有能够按下它,然后简单地忘了它;) – Paranaix 2012-07-11 12:00:19