• 标 题:Lockdown2000_7.0.0.1破解手记 (3千字)
  • 作 者:十夜
  • 时 间:2000-5-26 12:02:17
  • 链 接:http://bbs.pediy.com

Lockdown2000_7.0.0.1破解手记
本人属懒派狂人,自下载Lockdown2000_7.0.0.1后一直等待破解的出现,但是始终不见其踪影。
本着你不烦我我不破你的原则平静的度过了十天,终于,讨厌的东西出现了,看来只有按原则
办事了,不想这东西加了壳,又臭又硬,还好在吴朝相的主页找到了脱壳后的汉化版本,省了
一道工序,可以开始工作了。

用W32Dasm反编译Lockdown2000.exe,找那个让我讨厌的东西(过期提示),如下所示:
:004C313D E8321CFEFF              call 004A4D74
:004C3142 84C0                    test al, al
:004C3144 7546                    jne 004C318C
:004C3146 E8B516FEFF              call 004A4800
:004C314B 48                      dec eax
:004C314C 7D27                    jge 004C3175
:004C314E A14C9E4D00              mov eax, dword ptr [004D9E4C]
:004C3153 8B00                    mov eax, dword ptr [eax]
:004C3155 E82AC5F8FF              call 0044F684

* Possible StringData Ref from Code Obj ->"The trial period on this demo "
                                        ->"of LockDown 2000 has expired."
往上看看004C3144那一行能跳过过期提示,改为jmp 004C318C就不会过期了,但这也太那个……

注意一下call 004A4D74,看起来好像很有意思,到004A4D74去看看:
* Referenced by a CALL at Addresses:
|:004B5127  , :004B524E  , :004B56FC  , :004B5C0F  , :004BD36D 
|:004BE723  , :004C313D  , :004C6AF4  , :004CBA42  , :004CCFAB 
|:004CF4A3  , :004CF5FF 
|
:004A4D74 55                      push ebp
:004A4D75 8BEC                    mov ebp, esp
:004A4D77 B905000000              mov ecx, 00000005

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004A4D81(C)
|
:004A4D7C 6A00                    push 00000000
:004A4D7E 6A00                    push 00000000
:004A4D80 49                      dec ecx
:004A4D81 75F9                    jne 004A4D7C
:004A4D83 53                      push ebx
:004A4D84 56                      push esi
:004A4D85 33C0                    xor eax, eax
:004A4D87 55                      push ebp
:004A4D88 68E0514A00              push 004A51E0
:004A4D8D 64FF30                  push dword ptr fs:[eax]
:004A4D90 648920                  mov dword ptr fs:[eax], esp

* Possible StringData Ref from Code Obj ->"LD2KReg.ini"
                                  |
:004A4D93 B9F8514A00              mov ecx, 004A51F8
:004A4D98 B201                    mov dl, 01
:004A4D9A A1C8A14700              mov eax, dword ptr [0047A1C8]
:004A4D9F E8CC54FDFF              call 0047A270
:004A4DA4 8BD8                    mov ebx, eax
:004A4DA6 6A00                    push 00000000
:004A4DA8 8D45E0                  lea eax, dword ptr [ebp-20]
:004A4DAB 50                      push eax

* Possible StringData Ref from Code Obj ->"Register"
                                  |
:004A4DAC B90C524A00              mov ecx, 004A520C

* Possible StringData Ref from Code Obj ->"Register"
                                  |
:004A4DB1 BA0C524A00              mov edx, 004A520C
:004A4DB6 8BC3                    mov eax, ebx
:004A4DB8 8B30                    mov esi, dword ptr [eax]
:004A4DBA FF16                    call dword ptr [esi]
:004A4DBC 8D45DC                  lea eax, dword ptr [ebp-24]
:004A4DBF E8B4F9FFFF              call 004A4778
:004A4DC4 8B55DC                  mov edx, dword ptr [ebp-24]
:004A4DC7 8B45E0                  mov eax, dword ptr [ebp-20]
:004A4DCA E8BDF2F5FF              call 0040408C
:004A4DCF 7537                    jne 004A4E08               
…………………………………………………………
好像很受欢迎的样子,而且它还提到了LD2KReg.ini,再看看后面的代码,应该是判断注册的地方,程序很简单,将004A4DCF的jne 004A4E08改为je 004A4E08即可成为注册版。
LD2KReg.ini 文件内容变为:
[Register]
Register=C5VPQ1;=SMQ
我想用没改过的汉化版做一下测试,可它显示已经是注册版了,不知这个文件在别的机器上管不管用?我用的是WIN2000,该文件在C:\WINNT下,WIN98我就不清楚了。

另:我最爱用的EXPLOR2000到了1.52.2版本,我将其脱壳后在WIN2000中不能运行,WHY?

                                                            Tennight.C    2000/5/26