标题: 研究改exe有关外挂dll,剧本指令,ollydbg使用技巧的疑问
性别:未知-离线 coarsemelody

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 23
编号 279004
注册 2008-5-21


发表于 2010-9-10 14:01 资料 短消息 只看该作者
研究改exe有关外挂dll,剧本指令,ollydbg使用技巧的疑问

新人发帖,如有不合规矩之处,望见谅
最近想和同学一起做mod,研究exe的更改时,发现很多难关,原本自己攻克或许有可能,但是如果有前人的经验,何必重复造相同的车轮?

直奔主题:
1. 我发现论坛里的高手们,通常都是使用直接修改exe的方式来增加/修改/减少功能的,就我亲身实践来看,不太能够理解,为什么没有人试图使用外挂dll的方式来对exe进行扩充呢?外挂dll以后,扩充功能相对要比用汇编直接写,方便多了吧……

2. 我逛了好几遍论坛,可能是小弟眼拙,竟没有找到任何一篇有关于exe是如何加载/读取/执行剧本指令的文章。在剧本指令的添加/修改方向,小弟毫无头绪,不知各位高手能否指点一二?

3. ollydbg也用过两回,但是至今方是第一次用它来正式地去crack/修改一个程序。除了佩服前人的功力以外,我在巨大的exe面前有点迷茫。各位是通过什么手段,去把一个个功能定位到一个函数地址的呢?有什么好用的搜索/跳转/自动断点类似的功能么?

以上,希望能够早日理清思路,获得答复。谢谢。


顶部
性别:未知-离线 coarsemelody

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 23
编号 279004
注册 2008-5-21


发表于 2010-9-10 21:57 资料 短消息 只看该作者
看来我果然没什么人回答我,经过我苦心查阅ollydbg教程,个大搜索引擎通过不固定词组搜索寻求帮助后,对于问题三的解答如下:

用来定为一个指定功能函数有一个很有效的办法:内存访问和内存写入断点,在内存窗口按Ctrl+G到指定地址后,对指定地址点右键,选择断点,再选择内存写入/访问,就可以在程序访问/写入该内存的时候,自动进入中断。极其方便。

例如,我要锁定经验值永远为零。
用我原先的本办法找到攻击函数入口,然后一个个函数定位,我用了好久定位到了战斗后绘制人物数据面板的函数,但是花了很大力气都无法锁定经验值。

但是用内存写入的话,只要根据论坛内已有文献中记载的内存地址:4A1B68 + x *4H +2d 来推断到指定地址,做写入中断,再做任何增加经验的操作,马上定位到指定地址:004089B6。把这一行代码后面的DL寄存器的数值置为0.于是经验就被永远锁定住了


顶部
性别:男-离线 wysjbc
(小冲)


Rank: 6Rank: 6Rank: 6
组别 校尉
级别 安国将军
功绩 19
帖子 862
编号 358831
注册 2010-2-3
来自 福建


发表于 2010-9-11 08:05 资料 文集 短消息 只看该作者 QQ
1、我也不知道= =
2、好像岱赢的帖子里有。在置顶里。
3、OB可以查找指令和地址。
顶部
性别:未知-离线 coarsemelody

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 23
编号 279004
注册 2008-5-21


发表于 2010-9-13 10:21 资料 短消息 只看该作者
多谢楼上,我终于在岱赢的帖子第二页的某一个小角落翻到了剧本指令解析
另外,继续琢磨为啥不用外挂dll……
顶部

正在浏览此帖的会员 - 共 1 人在线




当前时区 GMT+8, 现在时间是 2025-2-8 06:16
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.008375 second(s), 8 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP