E程序12位Crackme 简单分析
【破解日期】 2006年11月22日【破解作者】 冷血书生
【作者邮箱】 meiyou
【作者主页】 hxxp://www.126sohu.com/
【使用工具】 OD
【破解平台】 Win9x/NT/2000/XP
【软件名称】 e
【下载地址】 本地
【软件大小】 534k
【加壳方式】 无
【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
------------------------------------------------------------------------
--------
【破解内容】
0040A0C0 sub esp,24
0040A0C6 call ECRACKME.0040A299 ; 算法Call
0040A0CB push -1
0040A0CD push 8
0040A0CF push 16010003
0040A0D4 push 52010001
0040A0D9 call ECRACKME.0040A6D1
0040A0DE add esp,10
0040A0E1 mov dword ptr ss:,eax ; 注册码1
0040A0E4 mov eax,dword ptr ds:
0040A0E9 push eax
0040A0EA push dword ptr ss:
0040A0ED call ECRACKME.00409F0C
0040A0F2 add esp,8
0040A0F5 cmp eax,0
0040A0F8 mov eax,0
0040A0FD sete al
0040A100 mov dword ptr ss:,eax
0040A103 mov ebx,dword ptr ss:
0040A106 test ebx,ebx
0040A108 je short ECRACKME.0040A113
0040A10A push ebx
0040A10B call ECRACKME.0040A6C5
0040A110 add esp,4
0040A113 cmp dword ptr ss:,0
0040A117 je ECRACKME.0040A21A ; 相等就失败
0040A11D push -1
0040A11F push 8
0040A121 push 16010004
0040A126 push 52010001
0040A12B call ECRACKME.0040A6D1
0040A130 add esp,10
0040A133 mov dword ptr ss:,eax ; 注册码2
0040A136 mov eax,dword ptr ds:
0040A13B push eax
0040A13C push dword ptr ss:
0040A13F call ECRACKME.00409F0C
0040A144 add esp,8
0040A147 cmp eax,0
0040A14A mov eax,0
0040A14F sete al
0040A152 mov dword ptr ss:,eax
0040A155 mov ebx,dword ptr ss:
0040A158 test ebx,ebx
0040A15A je short ECRACKME.0040A165
0040A15C push ebx
0040A15D call ECRACKME.0040A6C5
0040A162 add esp,4
0040A165 cmp dword ptr ss:,0
0040A169 je ECRACKME.0040A21A ; 相等就失败
0040A16F push -1
0040A171 push 8
0040A173 push 16010005
0040A178 push 52010001
0040A17D call ECRACKME.0040A6D1
0040A182 add esp,10
0040A185 mov dword ptr ss:,eax ; 注册码3
0040A188 mov eax,dword ptr ds:
0040A18D push eax
0040A18E push dword ptr ss:
0040A191 call ECRACKME.00409F0C
0040A196 add esp,8
0040A199 cmp eax,0
0040A19C mov eax,0
0040A1A1 sete al
0040A1A4 mov dword ptr ss:,eax
0040A1A7 mov ebx,dword ptr ss:
0040A1AA test ebx,ebx
0040A1AC je short ECRACKME.0040A1B7
0040A1AE push ebx
0040A1AF call ECRACKME.0040A6C5
0040A1B4 add esp,4
0040A1B7 cmp dword ptr ss:,0
0040A1BB je ECRACKME.0040A21A ; 相等就失败
0040A1C1 push -1
0040A1C3 push 8
0040A1C5 push 16010006
0040A1CA push 52010001
0040A1CF call ECRACKME.0040A6D1
0040A1D4 add esp,10
0040A1D7 mov dword ptr ss:,eax ; 注册码4
0040A1DA mov eax,dword ptr ds:
0040A1DF push eax
0040A1E0 push dword ptr ss:
0040A1E3 call ECRACKME.00409F0C
0040A1E8 add esp,8
0040A1EB cmp eax,0
0040A1EE mov eax,0
0040A1F3 sete al
0040A1F6 mov dword ptr ss:,eax
0040A1F9 mov ebx,dword ptr ss:
0040A1FC test ebx,ebx
0040A1FE je short ECRACKME.0040A209
0040A200 push ebx
0040A201 call ECRACKME.0040A6C5
0040A206 add esp,4
0040A209 cmp dword ptr ss:,0
0040A20D je ECRACKME.0040A21A ; 相等就失败
0040A213 mov eax,1
0040A218 jmp short ECRACKME.0040A21C
0040A21A xor eax,eax
0040A21C test eax,eax
0040A21E je ECRACKME.0040A25F
0040A224 push 80000004
0040A229 push 0
0040A22B push ECRACKME.004090CE ; 欢迎你访问飘云阁
0040A230 push 80000301
0040A235 push 0
0040A237 push 0
0040A23C push 80000004
0040A241 push 0
0040A243 push ECRACKME.004090DF ; 注册成功
0040A248 push 3
0040A24D mov ebx,300
0040A252 call ECRACKME.0040A6CB
0040A257 add esp,28
0040A25A jmp ECRACKME.0040A295
0040A25F push 80000004
0040A264 push 0
0040A266 push ECRACKME.004090E8 ; 出错了!
0040A26B push 80000301
0040A270 push 0
0040A272 push 0
0040A277 push 80000004
0040A27C push 0
0040A27E push ECRACKME.004090F1 ; 你输入的注册码有误,请联系软件作者
0040A283 push 3
0040A288 mov ebx,300
0040A28D call ECRACKME.0040A6CB
0040A292 add esp,28
0040A295 mov esp,ebp
0040A297 pop ebp
0040A298 retn
/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
0040A2AF push 1
0040A2B4 mov ebx,164
0040A2B9 call ECRACKME.0040A6CB
0040A2BE add esp,10
0040A2C1 mov dword ptr ss:,eax
0040A2C4 mov dword ptr ss:,edx
0040A2C7 push 80000301
0040A2CC push 0
0040A2CE push 4B4EB28
0040A2D3 fld qword ptr ss: ; 机器码
0040A2D6 call ECRACKME.00409FA9
0040A2DB push 80000301
0040A2E0 push 0
0040A2E2 push eax
0040A2E3 push 2
0040A2E8 mov ebx,0CC
0040A2ED call ECRACKME.0040A6CB ; 算法Call
0040A2F2 add esp,1C
0040A2F5 push 80000301
0040A2FA push 0
0040A2FC push eax
0040A2FD push 1
0040A302 mov ebx,168
0040A307 call ECRACKME.0040A6CB
0040A30C add esp,10
0040A30F mov dword ptr ss:,eax ; eax保存结果
0040A312 push 80000301
0040A317 push 0
0040A319 push 4
0040A31E push 80000301
0040A323 push 0
0040A325 push 2
0040A32A push 80000004
0040A32F push 0
0040A331 mov eax,dword ptr ss:
0040A334 test eax,eax
0040A336 jnz short ECRACKME.0040A33D
0040A338 mov eax,ECRACKME.004090CD
0040A33D push eax
0040A33E push 3
0040A343 mov ebx,13C
0040A348 call ECRACKME.0040A6CB ; 取2到5位
0040A34D add esp,28
0040A350 mov dword ptr ss:,eax ; 保存注册码1
0040A353 mov ebx,dword ptr ss:
0040A356 test ebx,ebx
0040A358 je short ECRACKME.0040A363
0040A35A push ebx
0040A35B call ECRACKME.0040A6C5
0040A360 add esp,4
0040A363 mov ebx,dword ptr ds:
0040A369 test ebx,ebx
0040A36B je short ECRACKME.0040A376
0040A36D push ebx
0040A36E call ECRACKME.0040A6C5
0040A373 add esp,4
0040A376 mov eax,dword ptr ss:
0040A379 mov dword ptr ds:,eax
0040A37E push 80000301
0040A383 push 0
0040A385 push dword ptr ds:
0040A38B push 1
0040A390 mov ebx,164
0040A395 call ECRACKME.0040A6CB
0040A39A add esp,10
0040A39D mov dword ptr ss:,eax
0040A3A0 mov dword ptr ss:,edx
0040A3A3 push 80000301
0040A3A8 push 0
0040A3AA push 22F16632 ;
0040A3AF fld qword ptr ss: ; 机器码
0040A3B2 call ECRACKME.00409FA9
0040A3B7 push 80000301
0040A3BC push 0
0040A3BE push eax
0040A3BF push 2
0040A3C4 mov ebx,0CC
0040A3C9 call ECRACKME.0040A6CB ; 算法Call
0040A3CE add esp,1C
0040A3D1 push 80000301
0040A3D6 push 0
0040A3D8 push eax
0040A3D9 push 1
0040A3DE mov ebx,168
0040A3E3 call ECRACKME.0040A6CB
0040A3E8 add esp,10
0040A3EB mov dword ptr ss:,eax ; eax保存结果
0040A3EE push 80000301
0040A3F3 push 0
0040A3F5 push 4
0040A3FA push 80000301
0040A3FF push 0
0040A401 push 2
0040A406 push 80000004
0040A40B push 0
0040A40D mov eax,dword ptr ss:
0040A410 test eax,eax
0040A412 jnz short ECRACKME.0040A419
0040A414 mov eax,ECRACKME.004090CD
0040A419 push eax
0040A41A push 3
0040A41F mov ebx,13C
0040A424 call ECRACKME.0040A6CB ; 取2到5位
0040A429 add esp,28
0040A42C mov dword ptr ss:,eax ; 保存注册码2
0040A42F mov ebx,dword ptr ss:
0040A432 test ebx,ebx
0040A434 je short ECRACKME.0040A43F
0040A436 push ebx
0040A437 call ECRACKME.0040A6C5
0040A43C add esp,4
0040A43F mov ebx,dword ptr ds:
0040A445 test ebx,ebx
0040A447 je short ECRACKME.0040A452
0040A449 push ebx
0040A44A call ECRACKME.0040A6C5
0040A44F add esp,4
0040A452 mov eax,dword ptr ss:
0040A455 mov dword ptr ds:,eax
0040A45A push 80000301
0040A45F push 0
0040A461 push dword ptr ds:
0040A467 push 1
0040A46C mov ebx,164
0040A471 call ECRACKME.0040A6CB
0040A476 add esp,10
0040A479 mov dword ptr ss:,eax
0040A47C mov dword ptr ss:,edx
0040A47F push 80000301
0040A484 push 0
0040A486 push 2CF062E0 ;
0040A48B fld qword ptr ss: ; 机器码
0040A48E call ECRACKME.00409FA9
0040A493 push 80000301
0040A498 push 0
0040A49A push eax
0040A49B push 2
0040A4A0 mov ebx,0CC
0040A4A5 call ECRACKME.0040A6CB ; 算法Call
0040A4AA add esp,1C
0040A4AD push 80000301
0040A4B2 push 0
0040A4B4 push eax
0040A4B5 push 1
0040A4BA mov ebx,168
0040A4BF call ECRACKME.0040A6CB
0040A4C4 add esp,10
0040A4C7 mov dword ptr ss:,eax ; EAX保存结果
0040A4CA push 80000301
0040A4CF push 0
0040A4D1 push 4
0040A4D6 push 80000301
0040A4DB push 0
0040A4DD push 2
0040A4E2 push 80000004
0040A4E7 push 0
0040A4E9 mov eax,dword ptr ss:
0040A4EC test eax,eax
0040A4EE jnz short ECRACKME.0040A4F5
0040A4F0 mov eax,ECRACKME.004090CD
0040A4F5 push eax
0040A4F6 push 3
0040A4FB mov ebx,13C
0040A500 call ECRACKME.0040A6CB ; 取2到5位
0040A505 add esp,28
0040A508 mov dword ptr ss:,eax ; 保存注册码3
0040A50B mov ebx,dword ptr ss:
0040A50E test ebx,ebx
0040A510 je short ECRACKME.0040A51B
0040A512 push ebx
0040A513 call ECRACKME.0040A6C5
0040A518 add esp,4
0040A51B mov ebx,dword ptr ds:
0040A521 test ebx,ebx
0040A523 je short ECRACKME.0040A52E
0040A525 push ebx
0040A526 call ECRACKME.0040A6C5
0040A52B add esp,4
0040A52E mov eax,dword ptr ss:
0040A531 mov dword ptr ds:,eax
0040A536 push 80000301
0040A53B push 0
0040A53D push dword ptr ds:
0040A543 push 1
0040A548 mov ebx,164
0040A54D call ECRACKME.0040A6CB
0040A552 add esp,10
0040A555 mov dword ptr ss:,eax
0040A558 mov dword ptr ss:,edx
0040A55B push 80000301
0040A560 push 0
0040A562 push 6C21D6B ;
0040A567 fld qword ptr ss: ; 机器码
0040A56A call ECRACKME.00409FA9
0040A56F push 80000301
0040A574 push 0
0040A576 push eax
0040A577 push 2
0040A57C mov ebx,0CC
0040A581 call ECRACKME.0040A6CB ; 算法Call
0040A586 add esp,1C
0040A589 push 80000301
0040A58E push 0
0040A590 push eax
0040A591 push 1
0040A596 mov ebx,168
0040A59B call ECRACKME.0040A6CB
0040A5A0 add esp,10
0040A5A3 mov dword ptr ss:,eax ; EAX保存结果
0040A5A6 push 80000301
0040A5AB push 0
0040A5AD push 4
0040A5B2 push 80000301
0040A5B7 push 0
0040A5B9 push 2
0040A5BE push 80000004
0040A5C3 push 0
0040A5C5 mov eax,dword ptr ss:
0040A5C8 test eax,eax
0040A5CA jnz short ECRACKME.0040A5D1
0040A5CC mov eax,ECRACKME.004090CD
0040A5D1 push eax
0040A5D2 push 3
0040A5D7 mov ebx,13C
0040A5DC call ECRACKME.0040A6CB ; 取2到5位
0040A5E1 add esp,28
0040A5E4 mov dword ptr ss:,eax ; 保存注册码4
0040A5E7 mov ebx,dword ptr ss:
0040A5EA test ebx,ebx
0040A5EC je short ECRACKME.0040A5F7
0040A5EE push ebx
0040A5EF call ECRACKME.0040A6C5
0040A5F4 add esp,4
0040A5F7 mov ebx,dword ptr ds:
0040A5FD test ebx,ebx
0040A5FF je short ECRACKME.0040A60A
0040A601 push ebx
0040A602 call ECRACKME.0040A6C5
0040A607 add esp,4
0040A60A mov eax,dword ptr ss:
0040A60D mov dword ptr ds:,eax
0040A612 mov esp,ebp
0040A614 pop ebp
0040A615 retn
/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
小结:
4B4EB28xor 机器码 = 注册码1 ->取2到5位
22F16632 xor 机器码 = 注册码2 ->取2到5位
2CF062E0 xor 机器码 = 注册码3 ->取2到5位
6C21D6Bxor 机器码 = 注册码3 ->取2到5位
注册码1-注册码2-注册码3-注册码4==> 注册码
/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
------------------------------------------------------------------------
--------
【版权声明】 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
[ 本帖最后由 冷血书生 于 2006-11-22 21:47 编辑 ]
页:
[1]