-
-
[求助]关于0D和反汇编的一些疑问
-
发表于:
2009-5-20 21:23
4015
-
小弟初学破解,对反汇编工具和汇编语言都不是很熟悉,因此自己用VC6.0写了一个C语言的小程序来熟悉一下。。结果有很多疑问,这里提出来,希望看雪的各位高手能指点一下小弟。以下是我写的程序
#include <stdio.h>
void main()
{
int password=123456;
int input=0,i=0;
while(i<=3&&password!=input)
{
printf("请输入密码\n");
scanf("%d",&input);
i++;
if(password!=input)
printf("密码错误");
else
{
printf("密码正确");
break;
}
}
}
编译后有OD打开生成的EXE文件(debug版)的,发现OD停留在00401200处
如图
看一下代码发现不是我写的程序的代码。。然后往上找在发现了大量的int 3这种代码(不知道什么用)终于在00401000附近找到了我写的代码如图2
经过小小的修改后实现了一个小小的破解。。不过,使用后发现问题N多,第一个问题是,exe文件的入口为什么不是程序开始的地方呢?文件入口的那些代码是干什么用的。。第二个问题,我发现整个OD里面有很都代码,可问题是我这么个小小的程序根本只要几行代码就行了,那些剩下的代码到底有什么用?我试着nop了底下那些代码保存后发现程序还是能运行。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)