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位二
进制数可转换为一位十六进制数),这就是可执行文件的具体内容,当然,其中就包括可执
行文件的代码了。(一头老牛:好亲切啊)(一只菜鸟:笨牛,你给我闭嘴,我眼都花了)。
呵呵,此时,你是不是觉得看这些东西,有些那个?
这些东西看起来就像有字天书,没人能靠这玩意儿来进行分析,于是乎。就有了相应的软件,
可以将这些十六进制数值转换为相应的汇编代码,这样的话,我们就可以对别人的软件进行
分析了。这就是所谓的逆向分析了。
呵呵,聪明的你现在一定在想,如果找到软件计算注册码的部分,并对其进行分析,弄懂它
的计算方法,那么你不就不用通过¥的方式来进行软件注册了吗?当然,你也可以将此计算
过程还原为任意一个你所熟悉的编程语言,那么,编译后的这个程序,就叫做注册机,它的
功能就是计算某一特定软件的注册码。(呵呵,是不是经常在软件中看到此类说明?"
禁止制作和提供该软件的注册机及破解程序;禁止对本软件进行反向工程,如反汇编、反编
译等")
作者这样做,心情我们是可以理解的,毕竟人家花了那么多心思在自己的软件上,所以,我
不希望你仅仅是因为交不起注册费的原因来学习破解。
总的说来,上边儿的介绍有点儿太理想化了,上面提到的分析方法,就是所谓的静态分析,
发布评论