一个恐怖临时变量。。
本帖最后由 Chigco.Orc 于 2011-12-12 22:48 编辑1012EB3F 51 push ecx ; ecx==00A9F4B8
1012EB40 8B55 08 mov edx,dword ptr ss:
1012EB43 52 push edx ; NPC代码 edx=20000014 edx=2000008E
1012EB44 6A 00 push 0x0
1012EB46 A1 CCC52510 mov eax,dword ptr ds:
1012EB4B 50 push eax ; eax=07AC4C38
1012EB4C 8B4D E8 mov ecx,dword ptr ss:
1012EB4F 51 push ecx ;一直变化着的值。我们的目标!!!
1012EB50 E8 5B08F6FF call 1008F3B0; 对话call
向上找。。。
1012EAC0 55 push ebp
1012EAC1 8BEC mov ebp,esp
1012EAC3 6A FF push -0x1
1012EAC5 68 F27A1D10 push fsplatfo.101D7AF2
1012EACA 64:A1 00000000mov eax,dword ptr fs:
1012EAD0 50 push eax
1012EAD1 83EC 0C sub esp,0xC
1012EAD4 A1 50902410 mov eax,dword ptr ds:
1012EAD9 33C5 xor eax,ebp
1012EADB 50 push eax
1012EADC 8D45 F4 lea eax,dword ptr ss:
1012EADF 64:A3 00000000mov dword ptr fs:,eax
1012EAE5 894D E8 mov dword ptr ss:,ecx;郁闷的临时变量。
快到达头部的位置找到。向上一层找吧。。
1011800D 8D4D F0 lea ecx,dword ptr ss: ; 0012F8B4
10118010 E8 ABC0F0FF call 100240C0 ; 好吧,应该是这个call返回的eax,进去看看 3
10118015 8BC8 mov ecx,eax
10118017 E8 A46A0100 call 1012EAC0 ; 上面的代码都在这一层里。发现 mov ecx,eax 正是我们要的 2
1011801C EB 54 jmp 10118072 ;返回的地方 1
进入 10118010 的 call内部去。
100240C0 55 push ebp
100240C1 8BEC mov ebp,esp
100240C3 51 push ecx
100240C4 894D FC mov dword ptr ss:,ecx
100240C7 8B45 FC mov eax,dword ptr ss:
100240CA 8B00 mov eax,dword ptr ds:
100240CC 8BE5 mov esp,ebp
100240CE 5D pop ebp
100240CF C3 retn
天杀的,又是上面的 ecx 传进来的。回去上一层。看看call之前的ecx。就在call前面一句写着。。
1011800D 8D4D F0 lea ecx,dword ptr ss: ; 0012F8B4
我想哭啊,还跑上去吗?我看到头部了,貌似还得再跑上一层。。
请问,我方向对吗? 1012EB4B 50 push eax ; eax=07AC4C38
1012EB4C 8B4D E8 mov ecx,dword ptr ss:
1012EB4F 51 push ecx ;一直变化着的值。我们的目标!!!
1012EB50 E8 5B08F6FF call 1008F3B0; 对话call
1012EAE5 894D E8 mov dword ptr ss:,ecx;郁闷的临时变量。
// 看这条,在这里下断,进游戏对话,断下后如果这里的ECX和
1012EB4F 51 push ecx
这里的是一样,那就继续向上找,每次对比一下,就不会找错了。 回复 2# 雨夜
明白。。我去试试,谢谢啊。我试完继续反馈。 本帖最后由 Chigco.Orc 于 2011-12-14 00:29 编辑
那好,第一次找对了。
在大牛所说的
1012EAE5 894D E8 mov dword ptr ss:,ecx;郁闷的临时变量。
// 看这条,在这里下断,进游戏对话,断下后如果这里的ECX和
1012EB4F 51 push ecx
ecx 是一致的,我往上一层找,没错了。
那继续我之前的做法。往上一层走。
1011800D 8D4D F0 lea ecx,dword ptr ss: ; 0012F8B4
10118010 E8 ABC0F0FF call 100240C0 ; 好吧,应该是这个call返回的eax,进去看看 3
10118015 8BC8 mov ecx,eax
10118017 E8 A46A0100 call 1012EAC0 ; 上面的代码都在这一层里。发现 mov ecx,eax 正是我们要的 2
1011801C EB 54 jmp 10118072 ;返回的地方 1
进入 10118010 的 call内部去。
100240C0 55 push ebp
100240C1 8BEC mov ebp,esp
100240C3 51 push ecx
100240C4 894D FC mov dword ptr ss:,ecx
100240C7 8B45 FC mov eax,dword ptr ss:
100240CA 8B00 mov eax,dword ptr ds:
100240CC 8BE5 mov esp,ebp
100240CE 5D pop ebp
100240CF C3 retn
天杀的,又是上面的 ecx 传进来的。回去上一层。看看call之前的ecx。就在call前面一句写着。。
1011800D 8D4D F0 lea ecx,dword ptr ss: ; 0012F8B4
找到头部吧。。。
发现:
10117EE0 55 push ebp
10117EE1 8BEC mov ebp,esp
10117EE3 6A FF push -0x1
10117EE5 68 3B631D10 push 101D633B
10117EEA 64:A1 00000000mov eax,dword ptr fs:
10117EF0 50 push eax
10117EF1 83EC 08 sub esp,0x8
10117EF4 A1 50902410 mov eax,dword ptr ds:
10117EF9 33C5 xor eax,ebp
10117EFB 50 push eax
10117EFC 8D45 F4 lea eax,dword ptr ss:
10117EFF 64:A3 00000000mov dword ptr fs:,eax
10117F05 894D EC mov dword ptr ss:,ecx
10117F08 8B4D EC mov ecx,dword ptr ss:; 怀疑。
10117F0B E8 B0D0F1FF call 10034FC0 ;
10117F10 50 push eax ;执行到这一句,发现 ecx 是我们要的值。那就进入10117F0B call 查看
10117F0B call 内部
10034FC0 >55 push ebp
10034FC1 8BEC mov ebp,esp
10034FC3 51 push ecx
10034FC4 894D FC mov dword ptr ss:,ecx
10034FC7 8B45 FC mov eax,dword ptr ss:
10034FCA 8378 18 00 cmp dword ptr ds:,0x0
10034FCE 74 0A je 0034FDA
10034FD0 8B4D FC mov ecx,dword ptr ss:
10034FD3 8B41 18 mov eax,dword ptr ds:
10034FD6 EB 28 jmp 10035000
10034FD8 EB 26 jmp 10035000
10034FDA 8B55 FC mov edx,dword ptr ss:
10034FDD 837A 1C 00 cmp dword ptr ds:,0x0
10034FE1 74 1B je 10034FFE
10034FE3 8B45 FC mov eax,dword ptr ss:
10034FE6 8B48 1C mov ecx,dword ptr ds:
10034FE9 E8 D2FFFFFF call 10034FC0
10034FEE 8B4D FC mov ecx,dword ptr ss:
10034FF1 8941 18 mov dword ptr ds:,eax
10034FF4 8B55 FC mov edx,dword ptr ss:
10034FF7 8B42 18 mov eax,dword ptr ds:
10034FFA EB 04 jmp 10035000
10034FFC EB 02 jmp 10035000
10034FFE 33C0 xor eax,eax
10035000 8BE5 mov esp,ebp
10035002 5D pop ebp
10035003 C3 retn
可以断定是上一层的ecx吗?
就是。
10117F05 894D EC mov dword ptr ss:,ecx
10117F08 8B4D EC mov ecx,dword ptr ss:; 怀疑。
----------------------------------
我返回上一层的话,会无限断。。 楼主我也正在找CALL的参数,但是遇到瓶颈了,找不到来源那个基址一直是【ESP+???】
求老师做个找参数基址的教程!!! 还是无思路。 - -。。纠结的变量。
页:
[1]