能力值:
(RANK:350 )
|
-
-
2 楼
|
能力值:
( LV8,RANK:130 )
|
-
-
3 楼
谢谢老大帮助更改 呵呵 真不好意思! 给你添麻烦了 下次我注意!
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
看来,愿意深入下去的不多啊。不过也难怪,就是用高级语言设计一个简单的算法,在汇编下分析也不容易。
|
能力值:
(RANK:10 )
|
-
-
5 楼
支持原创!
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
00401168 > 0FBE81 F32040>MOVSX EAX,BYTE PTR DS:[ECX+4020F3] ; 像这样 DS:[ECX+4020F3] 的式子 一定要知道大都是取一位用户名、注册码或密码表(密码表是什么? 狂晕 我表达能力欠佳 说了你也不一定明白 你问表达能力好点的) 想知道它到底取什么吗? 呵呵教你一种方法 用 d 4020f3 看看 为什么不d ecx 呢 当然我也d 了 可
它是 00000000呀 有用吗?当然有用 好了 d 4020f3之后 看到什么? 看到你输入的注册名了吧 !知道这句是干什么的了吗?还不知道 那你看看OD下面的提示吧 是不是有你输入用户名的第一位呀!
0040116F . 83F8 20 CMP EAX,20 ;
00401172 . 74 07 JE SHORT Crackme1.0040117B ; 上面一个比较20 也就是用户名大于20的话 20位后就不参加运算了
这里好像不是说用户名大于20
而是看用户名里有没有空格
|
能力值:
( LV8,RANK:130 )
|
-
-
7 楼
谢谢 指出问题!
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
可能是太累了
小弟在后面 还跟了好久
004011B9 . 6A 32 PUSH 32 ; /Count = 32 (50.)
004011BB . 68 57214000 PUSH Crackme1.00402157 ; |Buffer = Crackme1.00402157
004011C0 . 68 C9000000 PUSH 0C9 ; |ControlID = C9 (201.)
004011C5 . FF75 08 PUSH DWORD PTR SS:[EBP+8] ; |hWnd
004011C8 . E8 5E000000 CALL <JMP.&USER32.GetDlgItemTextA> ; \GetDlgItemTextA 这个像是取输入注册码的吧 我没跟到这
004011CD . 83F8 00 CMP EAX,0
004011D0 . 74 1D JE SHORT Crackme1.004011EF
004011D0 . 74 1D JE SHORT Crackme1.004011EF
004011D2 . 33C9 XOR ECX,ECX
004011D4 > 0FBE81 572140>MOVSX EAX,BYTE PTR DS:[ECX+402157]
004011DB . 0FBE99 BB2140>MOVSX EBX,BYTE PTR DS:[ECX+4021BB]
004011E2 . 3BC3 CMP EAX,EBX
004011E4 . /75 09 jnz short Crackme1.004011EF
在这里还有一跳
004011C8 . E8 5E000000 CALL <JMP.&USER32.GetDlgItemTextA> ; \GetDlgItemTextA 这个像是取输入注册码的吧 我没跟到这
这个call 将会进行 serianl 比较
哈哈哈哈哈哈哈哈
可惜我有点懒 还没有跟出来
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
004011D4 > 0FBE81 572140>MOVSX EAX,BYTE PTR DS:[ECX+402157]
004011DB . 0FBE99 BB2140>MOVSX EBX,BYTE PTR DS:[ECX+4021BB]
刚才又试了一下
4021BB 这里面是这册码了
献丑了
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
或告诉破解也行,谢谢!
|
能力值:
( LV4,RANK:50 )
|
-
-
11 楼
奇怪了,为什么我的跟不进呢.我输入名字和SN后,到了这一步后
0040114D . 83F8 00 CMP EAX,0 ; 我的机子这里的eax显示为1,可是我明胆输了dahaij呀,不明白.
00401150 . 0F84 99000000 JE Crackme1.004011EF ;
00401156 . 83F8 04 CMP EAX,4 ; 是否大于4
00401159 . 0F82 90000000 JB Crackme1.004011EF
|
能力值:
( LV4,RANK:50 )
|
-
-
12 楼
我是在xpsp2和OD1.10中文版的上面调试的.为什么会出现这样的现象呢.楼主你是在什么环境下跟的呀.
|
能力值:
( LV4,RANK:50 )
|
-
-
13 楼
呵呵,晕..............一个我不得不狂晕的事情,我在下的中文OD1.1调试不了,而加密解密光盘提供的OD1.09却可以调试出来,我想知道为什么.是1.1的版本有问题吗.......有没有高手出来解释一下.
|
能力值:
( LV8,RANK:130 )
|
-
-
14 楼
最初由 dahaij 发布 奇怪了,为什么我的跟不进呢.我输入名字和SN后,到了这一步后 0040114D . 83F8 00 CMP EAX,0 ; 我的机子这里的eax显示为1,可是我明胆输了dahaij呀,不明白. 00401150 . 0F84 99000000 JE Crackme1.004011EF ; 00401156 . 83F8 04 CMP EAX,4 ; 是否大于4 00401159 . 0F82 90000000 JB Crackme1.004011EF
我好像在流行时尚里回了你的问题。实际没问题啊。我用的是flyod,xpsp1
|
能力值:
( LV8,RANK:130 )
|
-
-
15 楼
我也XP SP2 的环境呀!
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
不错,很感谢~~
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
00401174 . 6BC0 04 IMUL EAX,EAX,4 ; EAX的值是在40116f处赋值的 可以看到是依次取的用户名的ASC码 像这样的句子破解过程中可能会经常用到 要多分析两遍 彻底搞明白 这里把上面取的ASC码*4 给EAX
EAX应该是在401168处赋值吧!40116F处只是EAX-20吧,只是影响标志寄存器,EAX的值不变的!
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
晕哦 跟了3个小时才写好了 破解好辛苦啊
谁能讲讲变量名要怎么写才又能和反汇编后的一致 然后又具有可读性吗 下面那些象垃圾堆里弄出来的 _-##
int _tmain(int argc, _TCHAR* argv[])
{
int length,eax,ebx,esi,i;
char szUser[20],szPwd[20];
char s[30];
eax=0;
ebx=0;
esi=0;
i=0;
printf("input user\n");
scanf("%s",szUser);
length=strlen(szUser);
printf("length=%d\n",length);
for(i=0;i<length;i++)
{
eax=szUser[i]; //asicc转10进制
if(eax<20)
{
printf("error");
exit;
}
eax=eax*4;
ebx=ebx+eax;
esi=ebx;
}
if(esi==0)
{
printf("esi<0\n");
exit;
};
//-----------------------------------------------
ebx=0x654789;
for(i=length-1;i>-1;i--)
{
eax=szUser[i]; //asicc码转成10进制的
ebx--;
eax=ebx*2;
ebx=ebx+eax;
ebx--;
}
sprintf(s,"BS-%LX-%lu",ebx,esi);
printf("%s",s);
getchar();
getchar();
return 0;
}
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
课后练习米有了 楼主再放上来下好不 跟asm写的比较不吃力
|
能力值:
( LV2,RANK:10 )
|
-
-
20 楼
我调试的注册码是:
NAME:ZJXTE75
CN:BS-613A0E4F-2692
希望多出精品
http://washcn.com
|
能力值:
( LV2,RANK:10 )
|
-
-
21 楼
004011A3 . 68 BB214000 PUSH Crackme1.004021BB ; |s = Crackme1.004021BB
004011A8 . E8 6C000000 CALL <JMP.&USER32.wsprintfA> ;断在此
004011AD . 58 POP EAX
004011AE . 58 POP EAX ; Crackme1.004020C7:真码送EAX
004011AF . 58 POP EAX
004011B0 . 58 POP EAX
|
能力值:
( LV2,RANK:10 )
|
-
-
22 楼
我喜欢这样的
|
能力值:
( LV9,RANK:1010 )
|
-
-
23 楼
支持一下!
|
能力值:
( LV2,RANK:10 )
|
-
-
24 楼
楼主,附件不能下载呀
|
能力值:
( LV2,RANK:10 )
|
-
-
25 楼
不错
的确特别的详细
收藏啦
谢谢楼主哦
辛苦啦
这么照顾我们新手
|
|
|