匠心精神
  
- 贡献度
- 475
- 金元
- 14126
- 积分
- 3353
- 精华
- 4
- 注册时间
- 2018-8-26
|
你可以看看这段代码(地址是初版的游戏的,可以搜特征码),我读取的也是这个表
Ronin.exe+11F85C - 48 63 C9 - movsxd rcx,ecx
Ronin.exe+11F85F - 41 8B 44 CE 04 - mov eax,[r14+rcx*8+04]
Ronin.exe+11F864 - 48 8B 13 - mov rdx,[rbx]
Ronin.exe+11F867 - 3B 42 04 - cmp eax,[rdx+04]
Ronin.exe+11F86A - 73 0B - jae Ronin.exe+11F877
Ronin.exe+11F86C - 4C 6B C8 58 - imul r9,rax,58
Ronin.exe+11F870 - 49 83 C1 08 - add r9,08
Ronin.exe+11F874 - 4C 03 CA - add r9,rdx
这里rax是序号,从0到0xFFF
得到的r9地址+0x4C是物品ID,每项0x58字节
下面这段是读取物品名称和描述等
Ronin.exe+3B7CD4 - 48 8B 0D ED1C9A04 - mov rcx,[Ronin.exe+4D599C8]
// edx是物品ID
Ronin.exe+3B7CDB - 0FB7 12 - movzx edx,word ptr [rdx]
Ronin.exe+3B7CDE - 48 8B 49 70 - mov rcx,[rcx+70]
Ronin.exe+3B7CE2 - E8 ED7AD6FF - call Ronin.exe+11F7D4
// rsi是上面函数的返回值,rsi+10是名称, +14是详情,+18是说明
Ronin.exe+61D4F9 - 8B 4E 10 - mov ecx,[rsi+10]
Ronin.exe+61D4FC - E8 5FCAB9FF - call Ronin.exe+1B9F60
返回值是Unicode字符串的地址
然后就遍历整个表,读取ID,再远程调用得到名称这些数据
|
|