分析关键:
1.目的地坐标(通过不断改变目的地坐标来找到目的地坐标的地址,然后分析出基址即可)(XYZ , XZY ,XY)
//寻路动作
0046FC0B - D9 40 E4 - fld dword ptr [eax-1C]
0046FC0E - 8B 91 98020000 - mov edx,[ecx+00000298]
0046FC14 - D9 9A 34020000 - fstp dword ptr [edx+00000234] <<
0046FC1A - 8B 7F 04 - mov edi,[edi+04]
0046FC1D - A1 20A4F500 - mov eax,[Client.exe+B5A420]
EAX=2EB435B4
EBX=448EDF5C
ECX=1A91D248
EDX=1A7C8A08
ESI=2E992408
EDI=2EBF30C4
ESP=00187518
EBP=00187550
EIP=0046FC1A
得到这样的一个地址
fstp dword ptr [edx+00000234]
0046FBFA |. 50 PUSH EAX
0046FBFB |. 8BCF MOV ECX,EDI
0046FBFD |. E8 7EF7FFFF CALL Client.0046F380
0046FC02 |. 8B47 04 MOV EAX,DWORD PTR DS:[EDI+4]
0046FC05 |. 8B0D 20A4F500 MOV ECX,DWORD PTR DS:[F5A420]
0046FC0B |. D940 E4 FLD DWORD PTR DS:[EAX-1C]
0046FC0E |. 8B91 98020000 MOV EDX,DWORD PTR DS:[ECX+298]
0046FC14 |. D99A 34020000 FSTP DWORD PTR DS:[EDX+234]
0046FC1A |. 8B7F 04 MOV EDI,DWORD PTR DS:[EDI+4]
0046FC1D |. A1 20A4F500 MOV EAX,DWORD PTR DS:[F5A420]
0046FC22 |. D947 EC FLD DWORD PTR DS:[EDI-14]
0046FC25 |. 8B88 98020000 MOV ECX,DWORD PTR DS:[EAX+298]
0046FC2B |. D999 38020000 FSTP DWORD PTR DS:[ECX+238]
0046FC31 |. 85F6 TEST ESI,ESI
0046FC33 |. 74 09 JE SHORT Client.0046FC3E
0046FC35 |. 56 PUSH ESI
0046FC36 |. E8 A1324D00 CALL Client.00942EDC
得到的人物坐标就是
dd [[0xf5a420]+298]+234
就是 人物的坐标
2.人物角色对象(先找人物基址,然后通过访问了人物基址的代码来逆向找到关键访问代码)
006BC9E5 - 83 B8 2C020000 00 - cmp dword ptr [eax+0000022C],00
006BC9EC - 0F84 E9080000 - je Client.exe+2BD2DB
006BC9F2 - A1 ACBE1D03 - mov eax,[Client.exe+2DDBEAC] <<
006BC9F7 - 85 C0 - test eax,eax
006BC9F9 - 0F84 88000000 - je Client.exe+2BCA87
006B7676 - 83 BE 28030000 00 - cmp dword ptr [esi+00000328],00
006B767D - 0F84 37020000 - je Client.exe+2B78BA
006B7683 - 8B 0D ACBE1D03 - mov ecx,[Client.exe+2DDBEAC] <<
006B7689 - 85 C9 - test ecx,ecx
006B768B - 0F84 29020000 - je Client.exe+2B78BA
006B7804 - 6A 00 - push 00
006B7806 - 89 96 30020000 - mov [esi+00000230],edx
006B780C - 8B 0D ACBE1D03 - mov ecx,[Client.exe+2DDBEAC] <<
006B7812 - 8B 01 - mov eax,[ecx]
006B7814 - 8B 50 04 - mov edx,[eax+04]
006B7893 - 0FAF C8 - imul ecx,eax
006B7896 - 89 4D 98 - mov [ebp-68],ecx
006B7899 - 8B 0D ACBE1D03 - mov ecx,[Client.exe+2DDBEAC] <<
006B789F - 8D 45 9C - lea eax,[ebp-64]
006B78A2 - DA 65 98 - fisub [ebp-68]
004
追逐自己的梦想----------辅助制作第二十四课:寻路call的分析
最新推荐文章于 2024-10-03 19:45:00 发布
本文深入分析了一个游戏辅助的寻路call,通过内存地址和汇编指令,揭示了寻路过程中涉及的坐标计算、状态判断等关键步骤。通过对不同call的比较和排除,确定了可能的寻路call,并提供了可能的寻路call公式。内容包括目的地坐标、人物坐标和寻路状态的解析方法,对于理解游戏辅助的实现机制具有指导意义。
摘要由CSDN通过智能技术生成