新手菜鸟暴破与找出注册码
先分析算法 然后暴破的思路就出来了`~~~` 也可以逆 我们输入的假名为woaini 假码为12345678900401006 |. >push edi
00401007 |. >cmp ,1 ; 6与1比较假名位数
0040100B >jnb short CrackMe.00401025 ; 大于跳 想暴破就改为JMP
0040100D |. >push 0 ; /Style = MB_OK|MB_APPLMODAL
0040100F |. >push CrackMe.00403030 ; |提示
00401014 |. >push CrackMe.00403035 ; |用户名不能为空!
00401019 |. >push 0 ; |hOwner = NULL
0040101B |. >call <jmp.&user32.MessageBoxA>; \MessageBoxA
00401020 |. >pop edi
00401021 |. >leave
00401022 |. >retn 14
00401025 |> >mov esi, ; 把假名放进ESI
00401028 |. >lea edi,
0040102B |. >xor ecx,ecx ; 异或清0
0040102D |. >mov eax, ; 把假码长度放进EAX
00401030 |. >mov byte ptr ds:,0 ; 假码位数+3
00401034 |. >jmp short CrackMe.00401040
00401036 |> >/movzx eax,byte ptr ds:
0040103A |. >|add al,1
0040103C |. >|mov byte ptr ds:,al
0040103F |. >|inc ecx ; 指向ECX下一个字节
00401040 |> > cmp ecx,
00401043 |.^ >\jb short CrackMe.00401036这里不断垒加
00401045 |. >push ; /把假码压进去
00401048 |. >lea eax, ; |在这里看到xpbjoj真码咯
0040104B |. >push eax ; |String1
0040104C |. >call <jmp.&kernel32.lstrcmpA> ; \关键CALL
00401051 |. >or eax,eax
00401053 >jnz short CrackMe.0040106A ; 关键跳噢`~~`暴破改为NOP
00401055 |. >push 0 ; /Style = MB_OK|MB_APPLMODAL
00401057 |. >push CrackMe.00403030 ; |提示
0040105C |. >push CrackMe.00403046 ; |恭喜你,注册成功!
00401061 |. >push 0 ; |hOwner = NULL
00401063 |. >call <jmp.&user32.MessageBoxA>; \MessageBoxA
00401068 |. >jmp short CrackMe.0040107D
0040106A |> >push 0 ; /Style = MB_OK|MB_APPLMODAL
0040106C |. >push CrackMe.00403030 ; |提示
00401071 |. >push CrackMe.00403059 ; |注册失败,请继续努力!
通过分析得:这个软件是注册名随便让我们定的 然后把这个注册名发给作者 然后作者给你算法结果为xpbjoj
注册也可以暴破`~~`、 额 这个也是原创的哈 应该发到破解区吧! 发错 晕死 怎么办呢? 我是新人,看不太懂...
以后多多学习学习 分析的不错,软件能发上来吗? 什么软件啊
我也想试一试 哎! 很想学习,就是不太懂!
工具也没有! 我是新人,看不太懂 顶你了LZ 太牛B了