能力值:
( LV2,RANK:10 )
26 楼
00401154 |> 8A10 /mov dl, [eax] ; 依次开始从name的第一个字符取起
00401156 |. 2AD1 |sub dl, cl ; 新字符=原来字符-循环剩下的次数,第一次为name长度
00401158 |. 3813 |cmp [ebx], dl ; 新字符和Serial的对应字符进行比较
0040115A |. 75 18 |jnz short 00401174 ; 如果不相同,则game over(从这里我们可以知道name和
Serial
字符长度相同)
0040115C |. 40 |inc eax ; eax=eax+1,为取下一个字符进行下一次的循环运算做好准备
0040115D |. 43 |inc ebx ; ebx=ebx+1,为取下一个Serial进行下一次的比较做好准备
0040115E |.^ E2 F4 \loopd short 00401154 ; 循环
这是循环的部分,我有个地方不明白,循环中的CL值在哪有做运算呢?为什么它会等于EAX中剩下字符串的位数?前面也没有看到对CL的操作呀
能力值:
( LV2,RANK:10 )
27 楼
晕哦 确实简单
能力值:
( LV2,RANK:10 )
28 楼
楼上的 loopd 就是对ecx进行-1操作 当ecx = 0 的时候loopd就不跳了
能力值:
( LV2,RANK:10 )
29 楼
果然是新手学习的极品,简单易懂啊!谢谢
能力值:
( LV2,RANK:10 )
30 楼
gsqy2008
_lkt.-.7
能力值:
( LV2,RANK:10 )
31 楼
不错,对新手来说,就是需要最简的算法与最详细的注释,感谢lZ
能力值:
( LV2,RANK:10 )
32 楼
学习一下,刚才看了几个CRACKME,拿下来均不得要领,看看这个如何~~
能力值:
( LV2,RANK:10 )
33 楼
谢谢,费心了!
能力值:
( LV2,RANK:10 )
34 楼
代码少的并超级简单的我还可以,行数多的不管简单与否我都不行。
下不了文件,故发此贴
能力值:
( LV2,RANK:10 )
35 楼
好东东,谢谢楼主!!!!
能力值:
( LV2,RANK:10 )
36 楼
好文章
对初学者真的很好,谢谢你!
能力值:
( LV2,RANK:10 )
37 楼
dddddddddddddddddddddddddd
能力值:
( LV2,RANK:10 )
38 楼
谢谢楼主的分享.
能力值:
( LV2,RANK:10 )
39 楼
呵呵,希望多多看到这样的帖子,新手不希望一开始被吓倒
能力值:
( LV2,RANK:10 )
40 楼
谢谢
很详细了正好适合我使用!
感谢发文!
能力值:
( LV2,RANK:10 )
41 楼
很好,非常不错.
至少我明白了.
能力值:
( LV2,RANK:10 )
42 楼
感谢感谢感谢感谢感谢感谢感谢感谢感谢感谢感谢感谢
能力值:
( LV2,RANK:10 )
43 楼
var
i,j:Integer;
str:string;
begin
str:='';
j:=length(edit1.Text);
for i:=1 to length(edit1.Text) do
begin
str:=str+chr(ord(edit1.text[i])-j);
j:=j-1;
end;
edit2.text:=str;
end;
能力值:
( LV9,RANK:290 )
44 楼
不错 ! 顶!!希望多些这样适合新手的Crackme!!!
能力值:
( LV2,RANK:10 )
45 楼
easy!I like it.
能力值:
( LV9,RANK:1130 )
46 楼
新新新手。就是我了
能力值:
( LV2,RANK:10 )
47 楼
确实不错!!! 支持!!!
能力值:
( LV2,RANK:10 )
48 楼
能力值:
( LV2,RANK:10 )
49 楼
下载了一个,试试看!!!
能力值:
( LV2,RANK:10 )
50 楼
的确适合新手。很适合我。。
呵呵。
其实一加载后用od的插件查找字符串
你会发现“Your name must be at least five characters long!”
双击,然后F4,再分析也挺快的。