当软件写完后,在编译成可执行文件,然后才能发布,给用户使用。用户得到的就是这已经编译好的文件,如果用记事本打开EXE文件来查看的话,可以看到一大堆的乱码,如果就想这样对软件进行破解的话,那基本上是不可能的。
反编译就是为了解决这个问题,把EXE可执行文件反过来编译,当然,反编译的结果并不是说可以得到写程序的代码状态,而是得到汇编代码,这是一种低级语言,说它低级,并不是指它的档次比较低,而是指它能够直接操作系统底层,也有人说它是机器语言。
反编译的主要目的就是要得到程序的可视代码,汇编代码虽然看起来并不是那么容易理解,但总比乱码强多了。
得到了这个反编译出来的汇编语言,就可以查看到软件的运行情况,当然,主要是查看软件注册时的一些操作,如什么地方要进行判断,什么地方要进行跳转,最后分析出软件注册的方式,以实现对软件的破解。
以前常用的反编译软件有TRW2000、Softice、现在好像大家都更喜欢用OD,功能非常强大!