事先在游戏里,把武器放在包裹的第1格子上,
bp send,回到游戏里点,右键使用这个物品,OD断下来,复制 返回到 elementc.
0012EB9C 005869B2 返回到 elementc.005869B2 来自 elementc.0058E8A0
0012EBB0 00588B1F 返回到 elementc.00588B1F 来自 elementc.00586980
0012EBEC 005A8345 返回到 elementc.005A8345 来自 elementc.00588A70
0012EBFC 0058DF6A 返回到 elementc.0058DF6A 来自 elementc.005A8310
0012EC14 0045559B 返回到 elementc.0045559B 来自 elementc.0058DF40////
0012EC38 00458BE8 返回到 elementc.00458BE8 来自 elementc.00493F60
0012EC50 004D8A2C 返回到 elementc.004D8A2C 来自 elementc.004553B0
0012EC70 006D484A 返回到 elementc.006D484A
0012EC98 006D47CA 返回到 elementc.006D47CA 来自 elementc.006D47F0
0012ECBC 006C85CD 返回到 elementc.006C85CD 来自 elementc.006D47A0
0012ECD0 006D11E5 返回到 elementc.006D11E5
0012ED2C 006C8993 返回到 elementc.006C8993 来自 elementc.006D0C60
0012EDA0 0054E64F 返回到 elementc.0054E64F 来自 elementc.006C85D0
前2个地址一定不是,从头开始看特征,ctrl+F9,从第3个返回的地址开始试,
通常第4个第5个就是
0045558C 8B4C24 38 MOV ECX,DWORD PTR SS:[ESP+38] ; 堆栈 SS:[0012EC58]=00000000,ecx=015
00455590 56 PUSH ESI ; ESI=00000000
00455591 51 PUSH ECX ; ECX=00000000,武器所在的包裹位置
00455592 8B4C24 1C MOV ECX,DWORD PTR SS:[ESP+1C] ; 堆栈 SS:[0012EC34]=04724BF0=dd [924e0c]+20,ECX=0
00455596 E8 A5891300 CALL elementc.0058DF40
给带参数处下个断点,看参数是什么
[注意,这个[esp+38],怎么追踪]
[ 注意,这个[esp+1c],怎么追踪]
[这个是怎么追来的dd [924e0c]+20]
测试找到的CALL是否正确
mov eax,[924e0c]
mov eax,[eax+20]
push 0
push 0
CALL 0058DF40