- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章--汇编语言 (修订版)
稍微有点儿计算机知识的朋友一定知道,计算机是只识别0和1的,最
初那会儿,要写程序,就要用0和1来写,呵呵,Cool吧!所以曾经
有过的对程序员的崇拜,可能就源自那个时候吧 后来,人们发现用0
和1来写程序,太不爽了,不但写起来不上手,而且回过头来看的话,
应该很难再看明白了,总之出于这些原因,就有了汇编语言。
汇编语言用一些助记符来代替0和1的多种组合,也就是各个指令,这
样的话,从一定程度上来说,方便了许多(一头老牛:方便太多了)(一
只菜鸟:一点儿也不方便,完全看不懂)。但是,汇编也同样不方便,
同样写起来不爽,而且后期维护同样不方便,再加上人们慢慢地需要写
一些更大的程序,在这样的情况下,高级语言就被人发明了出来,就是
我们今天用的Basic、pascal、C、C++等等等等,这些语言的出现,一
下了使程序的开发难度大大减低了(一头老牛:减低太多了,我膝盖就
能写程序了) (一只菜鸟:还不是一样难),以前用汇编要很长时间才
能开发出来的程序,现在只需要很短的时间且很轻松的就可以搞定了,
特别是最近几年,可视化编程的大肆普及,使程序员的神秘感一下子摔
了下来,Coder这样的词现在都满天飞了。最惨的就是汇编,一夜之间
变成了低级语言、下流的语言、吃完大蒜不刷牙的民工、开车加完油不
给钱的地痞、在公共汽车上吐口水的冰岛人等等等等
(汇编:呜呜呜…我不活了)。
但是汇编还是有它先天的优势的,因为其与CPU 内部的指令一一对应,
所以在一些特殊的场合,必须由汇编来实现,比如访问硬件的端口、写
病毒….
而且生成的可执行文件效率巨高,且生成的可执行文件贼小,写小程序
是很爽的,呵呵,而且用汇编写注册机,是件很轻松的事,你不用再为
怎样还原为你所熟悉的语言而为难。说了这么多,还是切入主题吧 (昏
倒观众若干):
既然计算机只识别0和1,那么,所有存储在计算机上的文件,也都是
以二进制的形式存放的,当然也包括可执行文件了。
所以,你只要找一个十六进制编辑器比如Ultra Edit什么的,就可直
接打开并查看可执行文件了,呵呵,如果你能看懂的话 你会发现,此
时看到的,全是些十六进制数值 (每4位二进制数可转换为一位十六进
制数),这就是可执行文件的具体内容,当然,其中就包括可执行文件
的代码了。 (一头老牛:好亲切啊) (一只菜鸟:笨牛,你给我闭嘴,
我眼都花了)。
呵呵,此时,你是不是觉得看这些东西,有些那个?
这些东西看起来就像有字天书,没人能靠这玩意儿来进行分析,于是乎。
就有了相应的软件,可以将这些十六进制数值转换为相应的汇编代码,
这样的话,我们就可以对别人的软件进行分析了。这就是所谓的逆向分
析了。
呵呵,聪明的你现在一定在想,如果找到软件计算注册码的部分,并对
其进行分析,弄懂它的计算方法,那么你不就不用通过¥的方式来进行
软件注册了吗?当然,你也可以将此计算过程还原为任意一个你所熟悉
的编程语言,那么,编译后的这个程序,就叫做注册机,它的功能就是
计算某一特定软件的注册码。(呵呵,是不是经常在软件中看到此类说
明?禁止制作和提供该软件的注册机及破解程序;禁止对本软件进行
反向工程,如反汇编、反编译等)
作者这样做,心情我们是可以理解的,毕竟人家花了那么多心思在自己
的软件上,所以,我不希望你仅仅是因为交不起注册费的原因来学习破
解。
总的说来,上边儿的介绍有点儿太理想化了,上面提到的分析方法,就
是所谓的静态分析,此类分析常用的工具有W32DASM、IDA和HIEW等。
静态分析,顾名思义,就是只通过查看软件的反汇编代码来对软件进行
分析。一般如果只是想暴破软件,只进行静态分析就够了。但要想真正
的弄清注册算法,一般还是要进行动态分析的,即能过调试器来一边执
行程序一边进行分析。具体内容,我会在《破解原理》和《调试器入门》
中详细说明,呵呵,毕竟现在都以经有点儿跑题了。
我废话说了这么多,其实就是想告诉你汇编的重要性,我不要求你精通,
但最少你也得能看懂吧,要不,还谈什么分析?虽然有哥们儿一点儿汇
编都不懂就上路了,甚至还破掉了几个软件,但是,这样是不是惨了点
儿?难不成你想暴破软件暴破一辈子?
其实你完全不用惧怕汇编的,看上去怪吓人的,其实跟你平时背那些控
件的属性方法差不多,MFC那么多你都搞的定,汇编命令才有多少?而
且,汇编不光只是在Crack软件时有用,在好多地方也都有用,且用处
巨大,所以我觉得,把汇编拿下,是件义不容辞的事:
你只要相信它并不难就好了。
(以下为第二次修改时加入)
先给你讲一下CPU的组成吧:
CPU的任
您可能关注的文档
- 南京理工大学部分科技成果汇编.doc
- 南京师范大学法学考研真题.docx
- 南京市2015级单招一模试卷--计算机专业.pdf
- 南京晓庄学院讲座.ppt
- 南开大学设计学专业考研大纲及辅导.pdf
- 南通市2017~2018学年度第一学期期末抽测高一语文试题PDF版.pdf
- 南医大2013年度秋季学期机能实验学考试项目.pdf
- 南医大机能实验学考试评分标准.pdf
- 脑出血术后后遗症合并气管切开的护理查房.pptx
- 脑梗死合并癫痫病人的护理查房.ppt
- 2021-2022学年湖南长沙雨花区七年级上册语文期末试卷及答案.doc
- 2025年宁夏石嘴山市选调生考试(公共基础知识)综合能力测试题汇编.docx
- 2025年宁波工程学院单招职业倾向性测试题库往年题考.docx
- 2025年安徽广播影视职业技术学院单招职业技能测试题库及答案1套.docx
- 2025年宁夏银川市选调生考试(行政职业能力测验)综合能力测试题及参考答案1套.docx
- 2022-2023学年湖南省长沙市九年级上学期历史第一次月考试题及答案.doc
- 2021-2022学年湖南长沙望城区七年级上册语文期末试卷及答案.doc
- 2023-2024学年湖南省常德市安乡县八年级下学期期末语文试题及答案.doc
- 2023-2024学年湖南省长沙市望城区八年级上学期期末数学试题及答案.doc
- 2023-2024学年湖南长沙七年级下册语文期末试卷及答案.doc
文档评论(0)