能力值:
(RANK:410 )
|
-
-
2 楼
E8是call的指令机器码,E8后面的机器码是call到某个地方的偏移地址。
关于jmp和call指令的偏移地址机器码计算方法如下:
Call或jmp目的地址减去前面Call或jmp地址再减去Call或jmp指令的长度等于Call或jmp指令的偏移地址机器码。
目的地址 - 当前地址 = 偏移地址
如用你上面的例子计算:
当前的Call指令地址是:0045F76C
目的的Call指令地址是:008EA880
Call指令长度是5
计算结果如下:
008EA880 - 0045F76C - 5 = 00 48 B1 0F
所以上面的CALL指令机器码是:
E8 0F B1 48 00
|
能力值:
( LV2,RANK:150 )
|
-
-
3 楼
已经明白,多谢
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
0045F761 > \8B8D D8000000 MOV ECX,DWORD PTR SS:[EBP+D8]
0045F767 . 53 PUSH EBX
0045F768 . 03CA ADD ECX,EDX
0045F76A . 51 PUSH ECX
0045F76B . 50 PUSH EAX
你看看这个啊
DWORD PTR SS:[EBP+B8]
是什么东西?
是地址里的内容送到了~ECX里吗?
|
|
|