软件分析

 反汇编 把目标代码转为 汇编 代码的过程.   一般,编写程序是利用高级语言如C,Pascal等语言进行编程的,后再通过编译程序生成能够 被计算机系统 直接执行的执行文件。反汇编便是指将这些执行文件反编译还原成 汇编语言或其余 高级语言。但一般反编译出来的程序与原程序会存在许多不一样,虽然执行效果相同,但程序代码 会发生很大的变化,非编程高手很难读懂。   另外,有许多程序也能够 进行逆向操做即 反编译 以求修改,例如Flash的文件生成的SWF文件,也能够被反汇编成Flash原码,但会发现与原程序有很大变化。   反汇编能够经过反汇编的一些软件实现吧,好象DEBUG也能反汇编的 DEBUG 文件位置 -u,这样好象就能实现了吧   静态反汇编是从反汇编出来的程序清单上分析,从提示信息入手进行分析。目前,大多数软件在设计时,都采用了人机对话方式。所谓人机对话,即在软件运行过程当中,须要由用户选择的地方,软件即显示相应的提示信息,并等待用户按键选择。而在执行完某一段程序以后,便显示一串提示信息,以反映该段程序运行后的状态,是正常运行,仍是出现错误,或者提示用户进行下一步工做的帮助信息。为此,若是咱们对静态反汇编出来的程序清单进行阅读,可了解软件的编程思路,以便顺利破解。 经常使用的静态分析工具是W32DASM、OllyDbg IDA和HIEW等。