- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
外挂制作CALL是如何炼成的之二:实践篇
CALL :
CALL :
外挂制作CCAALLLL是如何炼成的之二::实践篇
学习各种外挂制作技术,马上去百度搜索 魔鬼作坊 点击第
一个站进入、快速成为做挂达人。
前言:遇到一个CALL应该如何写?
这个是写一个内挂不可避免的问题.刚初学的朋友可能会不知道如何入手.想起刚学这方面
的时候,绕过很多弯路,现在把一些经验写出来给大家参考参考吧,不是很高深的东西,但我觉
得对某些人很有帮助.
写CALL的步骤!
我之前说过写一个程序的CALL其实就2个步骤,第一:找到相关地址,第二:传入适当参数.只
要这2点你做到了 这个CALL便能调用了.
其实写CALL就更简单了. 只要传入适当的参数调用这个地址便可以了.
这里 地址我们找到了,所以我们所做的就是传入适当的参数.
什么是适当的参数?
就是CALL所需要的数据. 大家都知道,在WINDOW系统里,数据的传递是靠 寄存器和堆
栈.其中寄存器用的最多的指令就是 MOV 指令.
而堆栈则是用PUSH指令.通过[esp+*] 或者先mov ebp,esp 然后[ebp+*] 指向堆栈
数据.
学习各种外挂制作技术,马上去百度搜索 魔鬼作坊 点击第
一个站进入、快速成为做挂达人。
说了那么多其实本文就是围绕着一个中心点来讲解,那就是教你如何
构建一个CALL所需要的参数环境.
例子一:
这是某游戏的一个CALL.我们来看看CALL的内部
写一个CALL,首先要写堆栈.这里从调用CALL的图中我们可以看出只有一个堆栈,那么就是
push ecx
call 5FA410
然后看调用的寄存器.
如何看CALL内部调用了哪些寄存器呢?
首先,明确一点,寄存器本身是空的.他并没有数据,只是一个用来存放数据的空间.
假如我们直接调用这个CALL 那么,寄存器中,数据不是为0就是运行上一个CALL残留的
数据.这些残留的数据我们暂且把他看成0.
那么 调用这个CALL的时候 寄存器 都是0了. 当然2个特殊的寄存器除外,一个是ESP
一个是EIP.
好了 现在CPU执行 call 5FA410 后
首先把当前的EIP压入堆栈, 也就是 call 5FA410 当前地址的下一条指令的地址.然后
JMP5FA410
这个时候,假设所有寄存器值都为0
有哪些指令会读取寄存器的值呢? 最常见的就是mov ,push,lea, 其实很多汇编指令
都会读取寄存器 比如说 add ebx,eax
读取EAX的值 加上EBX 所得的值放入EBX里.
第一条指令为 push ebx
我们刚刚说过push 也是传递寄存器的一种指令.它读取了EBX的值 开辟一个堆栈空间
也就是指令 subesp,4 然后存放.
这里EBX是不是我们所说的CALL所需要寄存器呢?
其实这里不是的.这里涉及到一个寄存器环境保护的机制.
什么是寄存器环境保护机制?
当ECX存放着一个重要的数据时候 ,这个时候需要运行一个CALL,而CALL的内部需要用
ECX存放东西.那么原有的ECX重要数据该怎么办?
这个时候,肯定要找一个空间存放起来,等CALL内部临时用完寄存器后在放回.
这就好像你家里有一个仓库, 堆满了玉米,但你邻居家要用你的仓库临时存放大米.你没办
法,只好先将玉米放入一个临时空间.然后给你邻居家使用.用完之后你在放回去.
这里的临时空间就是指window系统里的堆栈.首先PUSHEBX 把数据保存到堆栈里,等下
面的指令使用完寄存器,然后POPEBX.
在尾部我们可以看到 有POP EBX 对应上面的PUSH EBX.
这里我们发现 下面也有几个PUSH 指令
push ebx
push ebp
push esi
push edi
在CALL尾部我们可以看到
您可能关注的文档
- 固含量对凝胶注模成型碳化硅陶瓷性能的影响.PDF
- 固相多肽合成中王树脂和Fmoc_tBu酪氨酸成酯反应的研究.pdf
- 国中教师社会支持、教师自我效能与工作倦怠相关研究以角色.PDF
- 国人资讯成功在线-----国人智慧《三十》.pdf
- 固体氧化物燃料电池的电解质及电极材料的电导率研究方法_贺贝贝.pdf
- 国债预发行.doc
- 国内国际重大损失赔案信息.PDF
- 国企治理结构的_软性_制度安排_基于国企.pdf
- 固定污染源废气挥发性有机物的采样 气袋法(HJ 732-2014).pdf
- 国内豆粕市场仍旧处于低迷状态 - 艾凯数据研究中心.docx
- 运营成本上升.pptx
- 课题申报参考:“城—园”融合视角下的慢行环境促进公共健康的作用机制与规划设计响应研究.docx
- 课题申报参考:“城乡间隙”中社会网络合作的格局演化、驱动机制、空间效应和治理策略研究.docx
- 课题申报参考:“不可克减的权利”制约紧急权的功能与保障机制研究.docx
- 课题申报参考:“Z世代”大学生“网抑云”现象的教育引导研究.docx
- 课题申报参考:“VR+AI”情境下口译教学生态的数智化重构路径及效能研究.docx
- 课题申报参考:“第二个结合”赋能高校思想政治教育话语体系构建研究.docx
- 课题申报参考:“大思政课”驱动下高校兴农人才“田字型”培养机制建构与研究.docx
- 课题申报参考:“第二个结合”背景下乡村文化振兴的理论与实践研究.docx
- 课题申报参考:“第二个结合”视域下中国传统“天人合一”观的现代转化研究.docx
文档评论(0)