发布于:2018-7-16 14:34 | 113939次阅读 作者: 外部投稿 | 原作者: 通化程序员
技能分析一般都会以技能名字为突破口,部分可以升级的还可以通过技能等级来分析,而对于3D的这类游戏,还可以通过技能熟练地做为突破口。 首先通过CE对技能熟练度进行扫描,过滤后得到一个地址(如图)
在OD中下访问断点,攻击怪物后技能熟练度提高,游戏断下(如图) 这里的代码中被写入的地址是我们要的,向上分析eax的来源,来源于eax+[esi],而eax来源于eax左移4也就是说eax*10,说着这里是一个结构体数组,而继续分析esi的来源可以得到+13C偏移,返回后可以得到基地址2E75DB0(如图)
这样我们就得到了技能遍历的公式如下 2E75DB0+13C 技能数组起始地址 2E75DB0+140 技能数组成员数量 [2E75DB0+13C]+n*10 技能ID [2E75DB0+13C]+n*10+4 技能熟练度
但是我们发现这里的并没有技能的名字,所以我们需要另外获取技能名字库,并与技能遍历进行关联即可。 来源:通化程序员-公众号投稿 GSLAB网站投稿文章仅代表作者本人的观点,与本网站立场无关。 *转载请注明来自游戏安全实验室(GSLAB.QQ.COM) |
最新评论
发表评论