| 
注册时间2006-10-1
阅读权限30
最后登录1970-1-1UID22350 龙战于野 
 
 TA的每日心情|  | 奋斗 2017-6-11 12:16
 | 
|---|
 签到天数: 10 天 [LV.3]偶尔看看II | 
 
 发表于 2006-10-22 08:51:42
|
显示全部楼层 
| 幸好是明码比较 
 甚么都是一步一步来的,先是简单的:
 
 用户名:binbinbin
 假码:1234568888
 
 1、代码分析
 0042CDF0  /.  55            push    ebp
 0042CDF1  |.  8BEC          mov     ebp, esp
 0042CDF3  |.  6A 00         push    0
 0042CDF5  |.  53            push    ebx
 0042CDF6  |.  8BD8          mov     ebx, eax
 0042CDF8  |.  33C0          xor     eax, eax
 0042CDFA  |.  55            push    ebp
 0042CDFB  |.  68 AECE4200   push    0042CEAE
 0042CE00  |.  64:FF30       push    dword ptr fs:[eax]
 0042CE03  |.  64:8920       mov     fs:[eax], esp
 0042CE06  |.  8D55 FC       lea     edx, [ebp-4]
 0042CE09  |.  8B83 E4010000 mov     eax, [ebx+1E4]
 0042CE0F  |.  E8 CCCFFEFF   call    00419DE0
 0042CE14  |.  8B55 FC       mov     edx, [ebp-4]                     ;  假码
 0042CE17  |.  B8 10F74200   mov     eax, 0042F710
 0042CE1C  |.  E8 7767FDFF   call    00403598
 0042CE21  |.  8D55 FC       lea     edx, [ebp-4]
 0042CE24  |.  8B83 E0010000 mov     eax, [ebx+1E0]
 0042CE2A  |.  E8 B1CFFEFF   call    00419DE0
 0042CE2F  |.  8B55 FC       mov     edx, [ebp-4]                     ;  用户名
 0042CE32  |.  8BC3          mov     eax, ebx
 0042CE34  |.  8B08          mov     ecx, [eax]
 0042CE36  |.  FF51 18       call    [ecx+18]
 0042CE39  |.  68 C4CE4200   push    0042CEC4                         ;  “420”固定字符串入栈,准备做连接
 0042CE3E  |.  FF73 08       push    dword ptr [ebx+8]                ;  用户名
 0042CE41  |.  68 D0CE4200   push    0042CED0                         ;  “C00L”固定字符串入栈,准备做连接
 0042CE46  |.  B8 18F74200   mov     eax, 0042F718
 0042CE4B  |.  BA 03000000   mov     edx, 3
 0042CE50  |.  E8 2B6AFDFF   call    00403880                         ;  字符串连接函数
 0042CE55  |.  8D45 FC       lea     eax, [ebp-4]
 0042CE58  |.  8B0D 18F74200 mov     ecx, [42F718]                    ;  420binbinbinC00L
 0042CE5E  |.  8B15 C8E84200 mov     edx, [42E8C8]                    ;  又是一个固定字符串“Rc1-”入栈,准备连接
 0042CE64  |.  E8 A369FDFF   call    0040380C                         ;  怎么用的是两种连接函数?
 0042CE69  |.  8B55 FC       mov     edx, [ebp-4]                     ;  Rc1-420binbinbinC00L
 0042CE6C  |.  A1 10F74200   mov     eax, [42F710]
 0042CE71  |.  E8 5A6AFDFF   call    004038D0                         ;  比较函数
 0042CE76  |.  75 16         jnz     short 0042CE8E                   ;  关键Call。关键跳。爆破点。*************
 0042CE78  |.  B8 E0CE4200   mov     eax, 0042CEE0                    ;  good work, cracker!!!
 0042CE7D  |.  E8 3AFCFFFF   call    0042CABC
 0042CE82  |.  B8 00CF4200   mov     eax, 0042CF00                    ;  send the tut/patcher/keygen to [email protected]
 0042CE87  |.  E8 30FCFFFF   call    0042CABC
 0042CE8C  |.  EB 0A         jmp     short 0042CE98
 0042CE8E  |>  B8 3CCF4200   mov     eax, 0042CF3C                    ;  incorrect!!!
 0042CE93  |.  E8 24FCFFFF   call    0042CABC
 0042CE98  |>  33C0          xor     eax, eax
 0042CE9A  |.  5A            pop     edx
 0042CE9B  |.  59            pop     ecx
 0042CE9C  |.  59            pop     ecx
 
 
 2、内存注册机(可以在多处断下):
 
 42CE71
 1
 E8
 5
 
 内存方式   寄存器  EDX
 
 
 3、算法都是连接字符串,没什么好说的。
 
 
 4、终于到了最重要的:“脱壳”!!!
 正在研究中~~~~~~.........................
 
 [ 本帖最后由 binbinbin 于 2006-10-22 09:03 编辑 ]
 | 
 |