【幻想神域】人物属性分析

[复制链接]
查看: 116   回复: 1

41

主题

41

帖子

271

积分

超级版主

Rank: 8Rank: 8

积分
271
发表于 7 天前 | 显示全部楼层 |阅读模式
首先对角色名字进行搜索,得到3个结果,分别改变3个结果后,切换角色栏,发现角色名字变为了第三个地址的名字(如图)
图片1.png

通过OD对这个地址下访问断点,游戏断下(如图)
图片2.png
通过堆栈得处0x0A15D6E处函数的第二个参数是我们要的地址,跳到返回处向上分析,得到两个+4偏移(如图)
图片3.png
继续向上分析,得到1CC偏移和一个数组(如图)
图片4.png
在这里下断,发现ebx不变,不过切换不同的角色栏,edx会发生变化,也就是说edx决定数组是一般角色栏还是商城角色栏。
而对上面的算法进行分析,可以得到结构体数组的结构大小为0x80,继续向上分析ebx的来源,得到+0+4+10偏移(如图)
图片5.png
不过在这里下断,发现ecx的值和我们之前得到ecx是不同的,也就是说在函数call eax中可能还有其他偏移被我们漏掉了。在eax处下断,进入内部分析,得到+8偏移(如图)
图片6.png
继续分析0xD3DB04处的esi,发现esi来源本层函数中的二叉树,而二叉树
中只有一个节点(如图)
图片7.png
继续分析,我们又可以得到很多个二叉树的嵌套,并最终跳到了控件相关的遍历循环中。也就是说我们要分析的角色列表是挂在控件下的,所以只要得到了控件遍历就可以通过上面得到的公式对角色列表进行遍历了。

来亦何哀, 去亦何苦?
回复

使用道具 举报

0

主题

15

帖子

34

积分

在线班学员

Rank: 7Rank: 7Rank: 7

积分
34
发表于 前天 10:09 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X3.4 © 2001-2018 Comsenz Inc.