1. vc6.0 与VS2008编译出来的结果,有不同,尽量使用VC6.0,在VC6.0中(中文),在工具条空白出右键,然后选择组建,再选择Realese版本即可
2.
(1) IDA静态分析,找出关键的判断分支点,并可获得关键点的虚拟地址(VA),常使用键(空格:代码与流程图的转化;F12:更专业的流程图)
(2) 然后可以借助这些地址使用动态分析工具OllyDbg,根据ctrl+G查找根据IDA获得的关键点,然后可以进行下断点(F2),然后按F9运行,输入程序的相关内容,回车,然后可以直接双击指令修改代码,可以观察预执行区变化,推断代码功能,但是这只是在内存中修改程序;
(3) 若想修改掉二进制文件(可以实现比如绕过注册等等时),需要修改相应的字节,,关键就是内存地址VA与文件地址的关系,因为调试的时候在内存地址,而要修改文件的时候,需要找到要修改的点在文件的什么地址处,这里可以采用工具LoadPE
注意三个工具的配合使用。工具在看雪论坛均可下载。http://221.208.141.220:1212/tools/Disassemblers.htm