安全中国首页 > 文章中心 > 逆向工程技术
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

XnView v1.91最新版-软柿子算法分析及注册机

更新时间:2007-10-30 1:36:32
责任编辑:池天
热 点:
└文章标题┐:XnView v1.91最新版-软柿子算法分析及注册机
└破文作者┐:大菜一号
└破解对象┐:XnView v1.91
└下载地址┐:自已搜吧
└对象大小┐:不知
└加壳方式┐:aspack
└保护方式┐:普通软柿子算法
└编写语言┐:vc6
└使用工具┐:OD,peid
└破解平台┐:D-XP
└破解声明┐:软柿子真好~~~^-^
----------------------------------------------------------------------------------
└破解过程┐:
 嘿嘿``近来嫌ACDsee5.0速度太慢,看个图也要几秒!就下了个XnView!呵呵`虽说它不能简单地编辑一个图,不过看图速度较快,还有十六进制什么什么的!!饿也没用过啦~~西西~~~~~~~~~~

  好了``aspack的壳`,Peid帮我们搞定了!下断GetDlgItemText,name:jiangwu,serial:123456!,点注册后断在:
0052E0AA   .  56            push    esi
0052E0AB   .  8BB424 700100>mov     esi, dword ptr [esp+170]
0052E0B2   .  57            push    edi
0052E0B3   .  8B3D 70366600 mov     edi, dword ptr [<&USER32.GetDlgI>;  USER32.GetDlgItemTextA
0052E0B9   .  68 00010000   push    100                              ; /Count = 100 (256.)
0052E0BE   .  50            push    eax                              ; |Buffer
0052E0BF   .  68 D0070000   push    7D0                              ; |ControlID = 7D0 (2000.)
0052E0C4   .  56            push    esi                              ; |hWnd
0052E0C5   .  FFD7          call    edi                              ; \GetDlgItemTextA<=============断在这里,取注册名
0052E0C7   .  8D4C24 10     lea     ecx, dword ptr [esp+10]
0052E0CB   .  6A 20         push    20                               ; /Count = 20 (32.)
0052E0CD   .  51            push    ecx                              ; |Buffer
0052E0CE   .  68 D1070000   push    7D1                              ; |ControlID = 7D1 (2001.)
0052E0D3   .  56            push    esi                              ; |hWnd
0052E0D4   .  FFD7          call    edi                              ; \GetDlgItemTextA<=============这里,取注册码
0052E0D6   .  8A4424 70     mov     al, byte ptr [esp+70]<============注册名第一位到al
0052E0DA   .  84C0          test    al, al<===========================是否为空
0052E0DC   .  0F84 3A010000 je      0052E21C<=========================没输入注册名就出错
0052E0E2   .  8A4424 10     mov     al, byte ptr [esp+10]<============注册码第一位到al
0052E0E6   .  84C0          test    al, al<===========================是否为空
0052E0E8   .  0F84 2E010000 je      0052E21C<=========================没输入注册码就出错
0052E0EE   .  8D5424 08     lea     edx, dword ptr [esp+8]
0052E0F2   .  8D4424 70     lea     eax, dword ptr [esp+70]
0052E0F6   .  52            push    edx
0052E0F7   .  50            push    eax<==============================注册名地址进栈
0052E0F8   .  E8 E32CFAFF   call    004D0DE0<=========================关键call
0052E0FD   .  8D4C24 18     lea     ecx, dword ptr [esp+18]
0052E101   .  51            push    ecx
0052E102   .  E8 EC5F0200   call    005540F3
0052E107   .  8B4C24 14     mov     ecx, dword ptr [esp+14]
0052E10B   .  83C4 0C       add     esp, 0C
0052E10E   .  3BC8          cmp     ecx, eax
0052E110   .  74 5D         je      short 0052E16F
0052E112   .  A1 582A6E00   mov     eax, dword ptr [6E2A58]
0052E117   .  8D5424 30     lea     edx, dword ptr [esp+30]
0052E11B   .  6A 40         push    40                               ; /Count = 40 (64.)
0052E11D   .  52            push    edx                              ; |Buffer
0052E11E   .  68 93130000   push    1393                             ; |RsrcID = STRING "Invalid registration"
0052E123   .  50            push    eax                              ; |hInst => 10000000
0052E124   .  FF15 08376600 call    dword ptr [<&USER32.LoadStringA>>; \LoadStringA<==========加载错误字符串
0052E12A   .  6A 10         push    10                               ; /Style = MB_OK|MB_ICONHAND|MB_APPLMODAL
0052E12C   .  8D4C24 34     lea     ecx, dword ptr [esp+34]          ; |
0052E130   .  68 9CAA6D00   push    006DAA9C                         ; |Title = ""
0052E135   .  51            push    ecx                              ; |Text
0052E136   .  56            push    esi                              ; |hOwner
0052E137   .  FF15 90366600 call    dword ptr [<&USER32.MessageBoxA>>; \MessageBoxA<==========显示错误字符串
0052E13D   .  68 D0070000   push    7D0                              ; /ControlID = 7D0 (2000.)
0052E142   .  56            push    esi                              ; |hWnd
0052E143   .  FF15 88366600 call    dword ptr [<&USER32.GetDlgItem>] ; \GetDlgItem
0052E149   .  50            push    eax                              ; /hWnd
0052E14A   .  FF15 C8366600 call    dword ptr [<&USER32.SetFocus>]   ; \SetFocus
0052E150   .  68 9CAA6D00   push    006DAA9C                         ; /Text = ""
0052E155   .  68 D1070000   push    7D1                              ; |ControlID = 7D1 (2001.)
0052E15A   .  56            push    esi                              ; |hWnd
0052E15B   .  FF15 84366600 call    dword ptr [<&USER32.SetDlgItemTe>; \SetDlgItemTextA<=====注册错误之后设置注册码输入框为空
0052E161   .  5F            pop     edi
0052E162   .  B8 01000000   mov     eax, 1
0052E167   .  5E            pop     esi
0052E168   .  81C4 68010000 add     esp, 168
0052E16E   .  C3            retn
0052E16F   >  8D5424 70     lea     edx, dword ptr [esp+70]
0052E173   .  68 00010000   push    100
0052E178   .  52            push    edx
0052E179   .  68 D0070000   push    7D0
0052E17E   .  56            push    esi
0052E17F   .  FFD7          call    edi
0052E181   .  8D4424 10     lea     eax, dword ptr [esp+10]
0052E185   .  6A 20         push    20
0052E187   .  50            push    eax
0052E188   .  68 D1070000   push    7D1
0052E18D   .  56            push    esi
0052E18E   .  FFD7          call    edi
0052E190   .  8D4C24 70     lea     ecx, dword ptr [esp+70]
0052E194   .  51            push    ecx
0052E195   .  68 84716B00   push    006B7184                         ;  ASCII "LicenseName"
0052E19A   .  6A 00         push    0
0052E19C   .  E8 0FC1F7FF   call    004AA2B0
0052E1A1   .  8D5424 1C     lea     edx, dword ptr [esp+1C]
0052E1A5   .  52            push    edx
0052E1A6   .  68 74716B00   push    006B7174                         ;  ASCII "LicenseNumber"
0052E1AB   .  6A 00         push    0
0052E1AD   .  E8 FEC0F7FF   call    004AA2B0
0052E1B2   .  A1 602A6E00   mov     eax, dword ptr [6E2A60]
0052E1B7   .  83C4 18       add     esp, 18
0052E1BA   .  C705 882A6E00>mov     dword ptr [6E2A88], 1
0052E1C4   .  6A 01         push    1                                ; /Flags = MF_BYCOMMAND|MF_GRAYED|MF_STRING
0052E1C6   .  68 F2000000   push    0F2                              ; |ItemID = F2 (242.)
0052E1CB   .  50            push    eax                              ; |/hWnd => 00180068 ('XnView - [浏览器 - E:\工具\Sk...',class='XmainClass')
0052E1CC   .  FF15 F4366600 call    dword ptr [<&USER32.GetMenu>]    ; |\GetMenu
0052E1D2   .  50            push    eax                              ; |hMenu
0052E1D3   .  FF15 DC366600 call    dword ptr [<&USER32.EnableMenuIt>; \EnableMenuItem
0052E1D9   .  8B15 582A6E00 mov     edx, dword ptr [6E2A58]          ;  xnviewzh.10000000
0052E1DF   .  8D4C24 30     lea     ecx, dword ptr [esp+30]
0052E1E3   .  6A 40         push    40                               ; /Count = 40 (64.)
0052E1E5   .  51            push    ecx                              ; |Buffer
0052E1E6   .  68 94130000   push    1394                             ; |RsrcID = STRING "Registration successful.

1 2 3 下一页

 
相关文章
一日一文章
 
一日一软件
一日一动画