吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 2700|回复: 43

[原创] 《OD陪你玩暗黑2》之小站全开

  [复制链接]
andersgong 发表于 2020-7-27 11:32
大家好,距离本系列的上一篇“《OD陪你玩暗黑2》之运动员入场”(https://www.52pojie.cn/thread-1225270-1-1.html)已经过去了好几天,今天我们来看一看怎么解决一个新人很困扰的问题:跑图。对,就是跑图,尤其是不开任何插件的情况下,迷宫地图能把人累趴下,因此,本章我们就来手把手的教你怎么在dll里用逆向的思路来开图。
说明:本章所用的版本是1.10b,创建新号,进入游戏,踩小站截图如下。
08.png

废话不多说,开搞,老规矩,吾爱专用版od开起来:
01.png
带上参数-w表示窗口化运行,方便我们进行调试。

进入游戏后,按下ALT+E快捷键,进入d2common.dll空间,然后鼠标右键选择查找所有参考文本串:
02.png
然后再鼠标右键,在d2common.dll的所有文本字符串里搜索“waypoint”,也就是小站的英文名:
03.png
04.png 注意不要区分大小写!

结果搜索以后,我们找到了这个字符串集中出现的区域:
05.png

鼠标双击第一行进入源代码,然后经过比较这上下的几个函数,正好第一个函数最复杂,看起来也最像是小站逻辑判断:
06.png

经过分析源代码,上面都是些参数合法性判断,真正的精华,在最后return之前的那一块:
07.png

我们在retn 0x8这里下个断点,然后让游戏角色走过去踩小站,这里就会被断下来,我们狂按F9直到调用完成,记录下此时的寄存器内容
然后,我们再换一个小站全开的角色,重复上面的过程,也记录下最终的寄存器内容:
09.png
很明显不对,最终存放返回值的EAX结果不同!!!
这就为我们接下里的工作指明了方向!

我们聚焦到retn之前这段代码,看看EAX的结果是怎么产生的:
10.png

一眼看出,EAX的结果会受到ESI和EDX的共同作用,所以我们还是在retn这行下断点,重复上面的过程,不同的这次我们要小心一些,不要狂按F9,要停在最后一次调用结束的位置,截图如下:
11.png
果然,EDX的结果一样,但小站全开角色的ESI却是FFFF,基本搞定,漂亮!

我们找到mov si,word ptr ds:[edx+eax*2],修改为硬编码即可:
12.png
14.png

然后再让人物去踩一下小站看看效果:
13.png

完美搞定!下一章,我会讲一下怎么结合这两篇教程的方法,在尽量不修改原版dll的情况下,通过补丁的方式集成小站全开功能。

1.10纯净绿色版:链接:https://pan.baidu.com/s/1WBoba90trYnqRQxCt5pGQQ 提取码:efwt


变态角色存档:链接: https://pan.baidu.com/s/1fzaNBNFWiPG9GCOebIH6jg 提取码: kphp

免费评分

参与人数 14吾爱币 +12 热心值 +14 收起 理由
worldIsBug + 1 + 1 用心讨论,共获提升!
foreversos + 1 我很赞同!
sunnylds7 + 1 + 1 热心回复!
1317219287 + 1 + 1 我很赞同!
自由之心 + 2 + 1 热心回复!
babylon0008 + 1 + 1 谢谢@Thanks!
merroto + 1 用心讨论,共获提升!
qcz00622 + 1 + 1 我很赞同!
howmoney + 1 + 1 牛X!想当年也在大菠萝上花了很多时间
班长的男人 + 1 + 1 我很赞同!
YYL7535 + 1 + 1 谢谢@Thanks!
qiujunjian1 + 1 + 1 谢谢@Thanks!
pec1987 + 1 + 1 用心讨论,共获提升!
q13467982 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

FPX-TIAN 发表于 2020-7-28 09:01
每次玩去一个地方 第一任务就是小站,后来实在太熟悉了,就只特意开关键的小站,其他的随缘
 楼主| andersgong 发表于 2020-7-27 13:49
pec1987 发表于 2020-7-27 13:31
只为进来给大佬加个分!点个赞!

感谢,我也是初学者,不是大佬
a910673331 发表于 2020-7-27 12:42
BUG606 发表于 2020-7-27 12:47
哈哈 有意思,学到了
国际豆哥 发表于 2020-7-27 12:53
牛叉学到了
zqj899 发表于 2020-7-27 12:54
进来学习一下
myao5230 发表于 2020-7-27 13:16
以前玩过,现在没时间玩了。谢谢
得条毛 发表于 2020-7-27 13:25
牛啊老大学习下谢谢啦~~~~~~
pec1987 发表于 2020-7-27 13:31
只为进来给大佬加个分!点个赞!
岂是善类 发表于 2020-7-27 14:16
感谢分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2020-8-14 16:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表