冷血书生 发表于 2006-11-22 09:48:33

RCA Crackme 简单分析

【破解日期】 2006年11月22日
【破解作者】 冷血书生
【作者邮箱】 meiyou
【作者主页】 hxxp://www.126sohu.com/
【使用工具】 OD
【破解平台】 Win9x/NT/2000/XP
【软件名称】 RCA Crackme
【下载地址】 本地
【软件大小】 14k
【加壳方式】 无
【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
------------------------------------------------------------------------

--------
【破解内容】


00401076    >jnz short CrackMe.00401087                  ; nop掉即可去掉灰色按钮
00401078   |>push 1                                    ; /Enable = TRUE
0040107A   |>push dword ptr ss:                   ; |hWnd
0040107D   |>call <jmp.&user32.EnableWindow>             ; \EnableWindow
00401082   |>jmp CrackMe.0040112A
00401087   |>push 0                                    ; /Enable = FALSE
00401089   |>push dword ptr ss:                   ; |hWnd
0040108C   |>call <jmp.&user32.EnableWindow>             ; \EnableWindow

/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////


00401140   call <jmp.&kernel32.RtlZeroMemory>
00401145   push 100
0040114A   push CrackMe1.00403268                      ; 注册码
0040114F   call <jmp.&kernel32.RtlZeroMemory>
00401154   mov esi,CrackMe1.00403268                   ; 注册码
00401159   mov edi,CrackMe1.00403068                   ; 用户名
0040115E   push edi
0040115F   call <jmp.&kernel32.lstrlenA>
00401164   mov ebx,eax
00401166   xor eax,eax
00401168   push eax
00401169   push ebx
0040116A   push edi
0040116B   movsx ecx,byte ptr ds:             ; 取用户名ASCII值
0040116F   push ecx
00401170   push CrackMe1.00403059                      ; %x
00401175   push CrackMe1.00403168                      ;
0040117A   call <jmp.&user32.wsprintfA>                ;
0040117F   add esp,0C
00401182   push CrackMe1.00403168                      ;
00401187   push CrackMe1.00403268                      ;
0040118C   call <jmp.&kernel32.lstrcatA>
00401191   pop edi
00401192   pop ebx
00401193   pop eax
00401194   inc eax
00401195   cmp eax,ebx
00401197   jl short CrackMe1.00401168                  ; 循环
00401199   push CrackMe1.00403368                      ;
0040119E   push CrackMe1.00403268                      ;
004011A3   call <jmp.&kernel32.lstrcmpA>
004011A8   or eax,eax
004011AA   jnz short CrackMe1.004011F6               ; 爆破点
004011AC   push 0
004011AE   push CrackMe1.00403000                      ; Reverse Engineering Association
004011B3   push CrackMe1.00403020                      ; Congratulation! You've done with it
004011B8   push dword ptr ss:
004011BB   call <jmp.&user32.MessageBoxA>
004011C0   push 3EC
004011C5   push dword ptr ss:
004011C8   call <jmp.&user32.GetDlgItem>
004011CD   mov dword ptr ss:,eax
004011D0   push 0
004011D2   push dword ptr ss:
004011D5   call <jmp.&user32.EnableWindow>
004011DA   push 3ED
004011DF   push dword ptr ss:
004011E2   call <jmp.&user32.GetDlgItem>
004011E7   mov dword ptr ss:,eax
004011EA   push 0
004011EC   push dword ptr ss:
004011EF   call <jmp.&user32.EnableWindow>
004011F4   jmp short CrackMe1.0040120A
004011F6   push 0
004011F8   push CrackMe1.00403000                      ; Reverse Engineering Association
004011FD   push CrackMe1.00403044                      ; No,no! Try it again!
00401202   push dword ptr ss:
00401205   call <jmp.&user32.MessageBoxA>
0040120A   leave
0040120B   retn 4

/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////

小结:

非常简单的练习,所以I love

name: leng
code: 6c656e67
------------------------------------------------------------------------

--------
【版权声明】 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!

eopenfang 发表于 2006-11-22 10:05:55

跟着你走,不会错~!

哈哈,厉害的说!push 1 改成 push 0,,下面的jmp 改成nop程序是不是还可以运行呢?而且没灰扭??我等下就试下!

ZHOU2X 发表于 2006-11-22 16:19:50

学习,收藏!!支持!!!!
页: [1]
查看完整版本: RCA Crackme 简单分析