2024年4月26日发(作者:)

目录

no.1------------------前言(说明一下)

no.2------------------汇编语言

no.3------------------Windows程序

no.4------------------调试器及相关工具入门

no.5------------------破解原理

no.6------------------初级破解实践,强暴一个软件

no.7------------------中级破解实践,找到注册码及写内存注册机

no.8------------------高级破解实践,分析软件算法,编写注册机

----------------------------------------------------------------------------------------------------------------------

-------------

Q:哪些人可以学习破解?

A:任何会启动电脑并运行软件同时又想学习破解的人。我说的全是实话,如果你既不会启动

电脑又不会运行软件,那么我教你一个更高深的吧--破解电脑,呵呵,很简单,到大街上随

便抡个板砖什么的,回去慢慢破解吧 (记得关电源)

Q:有没有什么办法可以使我快速入门并成为高手?

A:有。但你得是个MM(P不PL无所谓),然后找个离你家最近的破解达人,什么也不用做,

眨个眼放个电之类的会吧(现在连初中的小女生都会这个),然后就成了,呵呵,想破什么

的话,让高手帮忙吧,到时说成是自己破的就成了 MM问为什么?因为那些高手大都奇丑

无比,呵呵,有了头脑就没了长相,男的也是这样,而且越是高手,长的就是越丑。据说一

次市里到CCG考察奶牛们的出乳情况,看到大哥Sun某的时候,说了句“这奶牛个儿这么

小啊,中午大家吃涮锅” (众大哥:大家准备好家伙,我们一会儿要去械斗)。呵呵,玩笑开到

这里,其实我说这么多,只是想告诉你,学习破解跟其它技术一样,请你不要试图投机取巧,

要想学,就脚踏实地,多看教程多动手实践积累经验,不要经常POSE那种弱智问题“我不

懂XX,请问我能学破解吗?”,答案是不能,你问的同时,不也正在学吗?想知道重要吗?

那我告诉你好了,凡是看雪教程上要求掌握的,你全要掌握,这还不算,要想成为高手就必

须精通,如果你不想一直只停留在入门阶段的话。不要想偷机取巧,谁一开始也不是什么都

会的,但你只要花一些时间和一小部分精力,那么没有什么你学不会的,知识是要积累的,

你知道自己不会却不去学,而在那儿问重不重要,人家会觉的你这个人并不想认真学破解,

而是报有侥幸心理在浪费时间,请不要做浪费时间的人。不要刚开始学就想马上成为高手,

没有高手,你没必要立下超越的目标,只把学知识放在首位就够了,欲速则不达,请不要做

急于求成的人。

Q:学破解对我来说有什么好处?

A:这个问题应该你自己来回答,呵呵,你为什么要学?“我想免费使用共享软件”倒...那多少

也算是个目的,但我希望你不要只报这种目的(目前国内共享软件业还有待发展)。我只是想

说给那些只是因为一时冲动才学习破解的人,请将你们当初的冲动继续维持下去,你需要明

白,学习破解的目的不只在于破解软件这个词,也许后来你会变为软件分析,随着学习时间

的增加,对你的编程水平,相信会有相当大的提高。学习别人好的思想,并化为已用 就我

个人来说,学习破解可以把我的汇编的基础给打好,呵呵,俺对操作系统这玩意儿感兴趣,

到时候还想写出来个玩玩儿呢,所以汇编这关必须要过....

Q:我很笨,那些大虾的教程我大都看不明白,我能学会吗?

A:永远不要说你笨,你只是学的比人家晚而已,太高深的看不懂,那你就捡能看懂的看,别

人能入门,你也能,不得要领只是暂时,大虾与你,也许差的就是一两年时间的问题。

<本章完>

第二章--汇编语言 (修订版)

稍微有点儿计算机知识的朋友一定知道,计算机是只识别0和1的,最初那会儿,要写程序,

就要用0和1来写,呵呵,Cool吧!所以曾经有过的对程序员的崇拜,可能就源自那个时

候吧 后来,人们发现用0和1来写程序,太不爽了,不但写起来不上手,而且回过头来看

的话,应该很难再看明白了,总之出于这些原因,就有了汇编语言。

汇编语言用一些助记符来代替0和1的多种组合,也就是各个指令,这样的话,从一定程度

上来说,方便了许多(一头老牛:方便太多了)(一只菜鸟:一点儿也不方便,完全看不懂)。

但是,汇编也同样不方便,同样写起来不爽,而且后期维护同样不方便,再加上人们慢慢地

需要写一些更大的程序,在这样的情况下,高级语言就被人发明了出来,就是我们今天用的

Basic、pascal、C、C++等等等等,这些语言的出现,一下了使程序的开发难度大大减低了

(一头老牛:减低太多了,我膝盖就能写程序了)(一只菜鸟:还不是一样难),以前用汇编

要很长时间才能开发出来的程序,现在只需要很短的时间且很轻松的就可以搞定了,特别是

最近几年,可视化编程的大肆普及,使程序员的神秘感一下子摔了下来,Coder这样的词现

在都满天飞了。最惨的就是汇编,一夜之间变成了低级语言、下流的语言、吃完大蒜不刷牙

的民工、开车加完油不给钱的地痞、在公共汽车上吐口水的冰岛人等等等等

(汇编:呜呜呜…我不活了)。

但是汇编还是有它先天的优势的,因为其与CPU内部的指令一一对应,所以在一些特殊的

场合,必须由汇编来实现,比如访问硬件的端口、写病毒….

而且生成的可执行文件效率巨高,且生成的可执行文件贼小,写小程序是很爽的,呵呵,而

且用汇编写注册机,是件很轻松的事,你不用再为怎样还原为你所熟悉的语言而为难。说了

这么多,还是切入主题吧(昏倒观众若干):

既然计算机只识别0和1,那么,所有存储在计算机上的文件,也都是以二进制的形式存放

的,当然也包括可执行文件了。

所以,你只要找一个十六进制编辑器比如Ultra Edit什么的,就可直接打开并查看可执行文

件了,呵呵,如果你能看懂的话 你会发现,此时看到的,全是些十六进制数值(每4位二

进制数可转换为一位十六进制数),这就是可执行文件的具体内容,当然,其中就包括可执

行文件的代码了。(一头老牛:好亲切啊)(一只菜鸟:笨牛,你给我闭嘴,我眼都花了)。

呵呵,此时,你是不是觉得看这些东西,有些那个?

这些东西看起来就像有字天书,没人能靠这玩意儿来进行分析,于是乎。就有了相应的软件,

可以将这些十六进制数值转换为相应的汇编代码,这样的话,我们就可以对别人的软件进行

分析了。这就是所谓的逆向分析了。

呵呵,聪明的你现在一定在想,如果找到软件计算注册码的部分,并对其进行分析,弄懂它

的计算方法,那么你不就不用通过¥的方式来进行软件注册了吗?当然,你也可以将此计算

过程还原为任意一个你所熟悉的编程语言,那么,编译后的这个程序,就叫做注册机,它的

功能就是计算某一特定软件的注册码。(呵呵,是不是经常在软件中看到此类说明?"

禁止制作和提供该软件的注册机及破解程序;禁止对本软件进行反向工程,如反汇编、反编

译等")

作者这样做,心情我们是可以理解的,毕竟人家花了那么多心思在自己的软件上,所以,我

不希望你仅仅是因为交不起注册费的原因来学习破解。

总的说来,上边儿的介绍有点儿太理想化了,上面提到的分析方法,就是所谓的静态分析,