发布于:2018-10-10 19:00 | 62075次阅读 作者: 外部投稿 | 原作者: 通化程序员
《QQ自由幻想》的任务栏内容比较详细,包含可接,已接,已完成,以及任务检索等信息。而由于这个游戏并没有很明显的主线支线之分,所以我们只能将所有的信息都遍历出来,才方便任务的判断。 通过任务名字对已接任务进行分析,首先通过CE搜索任务的名字,得到较少的结果,分别对几个结果进行修改,可以得到一个改变任务本地显示的结果(如图)
通过OD下访问断点后,再次访问任务,游戏断下(如图) 执行到返回后,继续分析第二个参数,得到+C和+0DC偏移(如图) 继续向上分析,得到来源于0053E795处call 00472231返回值(如图) 到函数内部继续分析,两个互相嵌套的结构体数组(如图) 第一个数组是esi*10+ebx+4,当数组序号为0的时候代表已接任务,为1代表已完成任务,第二个数组是eax+edi*0E4,用于遍历任务列表中的任务对象。 执行到返回后可以得到基地址(如图) 对数组内部的成员进行分析,发现对象比实际的要多一些,于是我们对函数附近的判断进行分析,可以在0053E7AB处得到判断方法,对对象的+0处进行判断,如果不为0才为有效对象(如图) 这样不光得到了已接任务,和得到了已完成任务的遍历。 来源:通化程序员—投稿 GSLAB网站投稿文章仅代表作者本人的观点,与本网站立场无关。 *转载请注明来自游戏安全实验室(GSLAB.QQ.COM) |
最新评论
发表评论