Ixis Research LTD 系列軟體破解之 一(Windows Lockup V2.0)
Ixis Research LTD 是一家軟體公司,以電腦安全為主要方向
官方主頁:http://www.softheap.com
Windows Lockup 是其公司開發的一個電腦安全防護軟體,當你離開電腦時,可以設定密碼,防止別人亂動你的電腦。可以設定自動手動啟動密碼保護,還支援省電功能、密碼保護的螢幕程式、網路使用者確認等等。試用者請在序列號輸入對對話方塊不輸入就可以了。
最新版本 2.0
-------------------------------------------------------------
小弟初學破解,只是感興趣,放上來只是為了多交流,請不吝賜教
-------------------------------------------------------------
用PeiD查無殼,Delphi編寫,
註冊時候在Enter Your Registation Code :裡填上123456789abcdefg共十六位,我隨便輸入的,點OK,這個時候出現一錯誤對話方塊,對話方塊標題是 Error, 內容是:Sorry,this registration code is invalid.
好了,我們知道出錯提示就可以用這個來找到關鍵的地方
用OD載入主程式wlock.exe,右擊=>搜尋=>字元參考, 然後我們找到上面的那個出錯提示,呵呵,就一處,而且連 Thank you for support !也找到了。雙擊到了對應程式碼處,如下
004C3928 |. E8 9F0FF4FF call wlock.004048CC
004C392D |. 33C0 xor eax,eax
004C392F |. E8 58FEFFFF call wlock.004C378C;這 是關鍵Call,我們在此下斷,直接跟進去看看
004C3934 |. 84C0 test al,al ; al與自身相與,隻影響標誌位也就是看看al是否為0
004C3936 |. 74 77 je short wlock.004C39AF ;如果 ZF=1,即al為0,那麼就跳到下面的出錯提示,否則就註冊成功
004C3938 |. B3 01 mov bl,1
004C393A |. A0 F47B4C00 mov al,byte ptr ds:[4C7BF4]
004C393F |. 50 push eax
004C3940 |. 8B0D D4A14C00 mov ecx,dword ptr ds:[4CA1D4]
004C3946 |. B2 01 mov dl,1
004C3948 |. A1 687D4B00 mov eax,dword ptr ds:[4B7D68]
004C394D |. E8 E24BFFFF call wlock.004B8534
004C3952 |. 8BF0 mov esi,eax
004C3954 |. E8 E372F4FF call wlock.0040AC3C
004C3959 |. 83C4 F4 add esp,-0C
004C395C |. DB3C24 fstp tbyte ptr ss:[esp] ; |浮點運算?
004C395F |. 9B wait ; |這附近有個call是加密我們的註冊碼的,呵呵
004C3960 |. 8D45 FC lea eax,dword ptr ss:[ebp-4] ; |
004C3963 |. E8 686CF4FF call wlock.0040A5D0 ; \wlock.0040A5D0
004C3968 |. 8B45 FC mov eax,dword ptr ss:[ebp-4]
004C396B |. 50 push eax
004C396C |. B9 F4394C00 mov ecx,wlock.004C39F4 ; ASCII "DT"
004C3971 |. 33D2 xor edx,edx
004C3973 |. 8BC6 mov eax,esi
004C3975 |. E8 2650FFFF call wlock.004B89A0
004C397A |. A1 D0A14C00 mov eax,dword ptr ds:[4CA1D0]
004C397F |. 50 push eax
004C3980 |. B9 003A4C00 mov ecx,wlock.004C3A00
004C3985 |. 33D2 xor edx,edx
004C3987 |. 8BC6 mov eax,esi
004C3989 |. E8 1250FFFF call wlock.004B89A0
004C398E |. 8BC6 mov eax,esi
004C3990 |. E8 F300F4FF call wlock.00403A88
004C3995 |. 6A 40 push 40
004C3997 |. B9 043A4C00 mov ecx,wlock.004C3A04 ; ASCII "Information"
004C399C |. BA 103A4C00 mov edx,wlock.004C3A10 ; ASCII "Thank you for support !"
004C39A1 |. A1 407F4C00 mov eax,dword ptr ds:[4C7F40]
004C39A6 |. 8B00 mov eax,dword ptr ds:[eax]
004C39A8 |. E8 1338FAFF call wlock.004671C0
004C39AD |. EB 18 jmp short wlock.004C39C7
004C39AF |> 6A 10 push 10
004C39B1 |. B9 283A4C00 mov ecx,wlock.004C3A28 ; ASCII "Error"
004C39B6 |. BA 303A4C00 mov edx,wlock.004C3A30 ; ASCII "Sorry, this registration code is invalid."
004C39BB |. A1 407F4C00 mov eax,dword ptr ds:[4C7F40]
004C39C0 |. 8B00 mov eax,dword ptr ds:[eax]
004C39C2 |. E8 F937FAFF call wlock.004671C0
004C39C7 |> 33C0 xor eax,eax
004C39C9 |. 5A pop edx
004C39CA |. 59 pop ecx
004C39CB |. 59 pop ecx
004C39CC |. 64:8910 mov dword ptr fs:[eax],edx
004C39CF |. 68 E4394C00 push wlock.004C39E4
004C39D4 |> 8D45 FC lea eax,dword ptr ss:[ebp-4]
004C39D7 |. E8 9C0EF4FF call wlock.00404878
004C39DC \. C3 retn
好,我們就在上面那個關鍵call F2設斷
F9 執行,填上Registration Code:123456789abcdefg,然後點OK,被OD攔下,看來我們斷點設對了。這個時候我們觀察一下暫存器的值:eax=0,esi指向我們輸入假碼的首地址,edx=0,現在我們跟進004C392F 處的這個call F7 我們來到
004C378C /$ 55 push ebp
004C378D |. 8BEC mov ebp,esp
004C378F |. 6A 00 push 0
004C3791 |. 6A 00 push 0
004C3793 |. 6A 00 push 0
004C3795 |. 53 push ebx
004C3796 |. 56 push esi
004C3797 |. 57 push edi
004C3798 |. 8845 FF mov byte ptr ss:[ebp-1],al ; 把0送到ss:[ebp-1]
004C379B |. BF D0A14C00 mov edi,wlock.004CA1D0
004C37A0 |. 33C0 xor eax,eax
004C37A2 |. 55 push ebp
004C37A3 |. 68 D0384C00 push wlock.004C38D0
004C37A8 |. 64:FF30 push dword ptr fs:[eax]
004C37AB |. 64:8920 mov dword ptr fs:[eax],esp
004C37AE |. 33DB xor ebx,ebx
004C37B0 |. 807D FF 00 cmp byte ptr ss:[ebp-1],0 ; ss:[ebp-1]是剛剛被置0的
004C37B4 |. 0F84 A5000000 je wlock.004C385F ; 跳過去
004C37BA |. A0 F47B4C00 mov al,byte ptr ds:[4C7BF4]
004C37BF |. 50 push eax
004C37C0 |. 8B0D D4A14C00 mov ecx,dword ptr ds:[4CA1D4]
004C37C6 |. B2 01 mov dl,1
004C37C8 |. A1 687D4B00 mov eax,dword ptr ds:[4B7D68]
004C37CD |. E8 624DFFFF call wlock.004B8534
004C37D2 |. 8BF0 mov esi,eax
004C37D4 |. 57 push edi
004C37D5 |. B9 E8384C00 mov ecx,wlock.004C38E8 ; ASCII "DT"
004C37DA |. 33D2 xor edx,edx
004C37DC |. 8BC6 mov eax,esi
004C37DE |. E8 2156FFFF call wlock.004B8E04
004C37E3 |. 8D45 F8 lea eax,dword ptr ss:[ebp-8]
004C37E6 |. 8B0F mov ecx,dword ptr ds:[edi]
004C37E8 |. BA F4384C00 mov edx,wlock.004C38F4
004C37ED |. E8 8A13F4FF call wlock.00404B7C
004C37F2 |. 8B45 F8 mov eax,dword ptr ss:[ebp-8]
004C37F5 |. E8 DA6EF4FF call wlock.0040A6D4
004C37FA |. DD1D DCA14C00 fstp qword ptr ds:[4CA1DC]
004C3800 |. 9B wait
004C3801 |. 57 push edi
004C3802 |. B9 00394C00 mov ecx,wlock.004C3900
004C3807 |. 33D2 xor edx,edx
004C3809 |. 8BC6 mov eax,esi
004C380B |. E8 F455FFFF call wlock.004B8E04
004C3810 |. DD05 DCA14C00 fld qword ptr ds:[4CA1DC]
004C3816 |. D81D 04394C00 fcomp dword ptr ds:[4C3904]
004C381C |. DFE0 fstsw ax
004C381E |. 9E sahf
004C381F |. 75 26 jnz short wlock.004C3847
004C3821 |. E8 1674F4FF call wlock.0040AC3C
004C3826 |. 83C4 F4 add esp,-0C
004C3829 |. DB3C24 fstp tbyte ptr ss:[esp] ; |
004C382C |. 9B wait ; |
004C382D |. 8D45 F4 lea eax,dword ptr ss:[ebp-C] ; |
004C3830 |. E8 9B6DF4FF call wlock.0040A5D0 ; \wlock.0040A5D0
004C3835 |. 8B45 F4 mov eax,dword ptr ss:[ebp-C]
004C3838 |. 50 push eax
004C3839 |. B9 E8384C00 mov ecx,wlock.004C38E8 ; ASCII "DT"
004C383E |. 33D2 xor edx,edx
004C3840 |. 8BC6 mov eax,esi
004C3842 |. E8 5951FFFF call wlock.004B89A0
004C3847 |> 8BC6 mov eax,esi
004C3849 |. E8 3A02F4FF call wlock.00403A88
004C384E |. DD05 DCA14C00 fld qword ptr ds:[4CA1DC]
004C3854 |. D81D 04394C00 fcomp dword ptr ds:[4C3904]
004C385A |. DFE0 fstsw ax
004C385C |. 9E sahf
004C385D |. 74 56 je short wlock.004C38B5
004C385F |> 8B07 mov eax,dword ptr ds:[edi] ; ds:[edi]指向假碼,這裡相當於把假碼移到eax去參與運算
004C3861 |. E8 CA12F4FF call wlock.00404B30 ; 取註冊碼的位數call,結果送eax
004C3866 |. 83F8 0C cmp eax,0C ; 註冊碼小於12位嗎?
004C3869 |. 7C 43 jl short wlock.004C38AE ; 小於跳走
004C386B |. 8B07 mov eax,dword ptr ds:[edi] ; ds:[edi]指向假碼,這裡相當於把假碼移到eax去參與運算
004C386D |. 8038 37 cmp byte ptr ds:[eax],37 ; 第一位是不是7?這裡我們要改,右擊=>修改資料
004C3870 |. 75 3C jnz short wlock.004C38AE ; 不是跳走
004C3872 |. 8B07 mov eax,dword ptr ds:[edi] ; 723456789abcdef=>eax
004C3874 |. 8078 01 30 cmp byte ptr ds:[eax+1],30 ; 第二位是不是0?所以也要改
004C3878 |. 75 34 jnz short wlock.004C38AE
004C387A |. 8B07 mov eax,dword ptr ds:[edi] ; 703456789abcdef=>eax
004C387C |. 8078 02 37 cmp byte ptr ds:[eax+2],37 ; 第三位是不是7?
004C3880 |. 75 2C jnz short wlock.004C38AE
004C3882 |. 8B07 mov eax,dword ptr ds:[edi] ; 707456789abcdef=>eax
004C3884 |. 8078 03 32 cmp byte ptr ds:[eax+3],32 ; 第四位是不是2?
004C3888 |. 75 24 jnz short wlock.004C38AE
004C388A |. 8B07 mov eax,dword ptr ds:[edi] ; 707256789abcdef=>eax
004C388C |. 8078 04 31 cmp byte ptr ds:[eax+4],31 ; 第五位是不是1?
004C3890 |. 75 1C jnz short wlock.004C38AE
004C3892 |. 8B07 mov eax,dword ptr ds:[edi]
004C3894 |. 8078 09 43 cmp byte ptr ds:[eax+9],43 ; 第十位是不是C?
004C3898 |. 75 14 jnz short wlock.004C38AE
004C389A |. 8B07 mov eax,dword ptr ds:[edi]
004C389C |. 8078 0A 57 cmp byte ptr ds:[eax+A],57 ; 第十一位是不是W?
004C38A0 |. 75 0C jnz short wlock.004C38AE
004C38A2 |. 8B07 mov eax,dword ptr ds:[edi]
004C38A4 |. 8078 0B 4C cmp byte ptr ds:[eax+B],4C ; 第十二位是不是L?
004C38A8 |. 75 04 jnz short wlock.004C38AE
004C38AA |. B3 01 mov bl,1 ; 註冊成功標記?
004C38AC |. EB 07 jmp short wlock.004C38B5 ; 跳過出錯的地方
004C38AE |> 8BC7 mov eax,edi
004C38B0 |. E8 C30FF4FF call wlock.00404878
004C38B5 |> 33C0 xor eax,eax ; eax清零
004C38B7 |. 5A pop edx
004C38B8 |. 59 pop ecx
004C38B9 |. 59 pop ecx
004C38BA |. 64:8910 mov dword ptr fs:[eax],edx
004C38BD |. 68 D7384C00 push wlock.004C38D7
004C38C2 |> 8D45 F4 lea eax,dword ptr ss:[ebp-C]
004C38C5 |. BA 02000000 mov edx,2
004C38CA |. E8 CD0FF4FF call wlock.0040489C ;這個是??
004C38CF \. C3 retn
呵呵,返回後呢,我們的eax=01,那麼al=1了,也就是註冊碼是正確的,也就說
只要我們的註冊碼滿足上面的幾個判斷條件就可以啦。
註冊資訊放在Windows Lockup目錄下的wlock.dat檔案裡,是加過密的,有興趣的可以看看加密演算法,在上面的幾個call裡.
相關文章
- 軟體測試之資料庫系列一2019-08-26資料庫
- 軟體破解2008-06-02
- [原創]淺談勝新系列軟體的破解2004-12-28
- 破解勒索軟體2020-08-19
- ezConverter V2.0 簡體中文版的破解(原創)2015-11-15
- unix軟體ncftpd 2.7.1之破解(11千字)2002-04-07FTP
- Lockup2000 v4.0破解實戰 (7千字)2001-11-06
- 軟體管理專家
v1.22a 之完美破解2004-06-30
- 菜鳥破解之軟體自己顯示註冊碼2015-11-15
- Adobe cs6 全系列軟體綠色破解版-一鍵安裝2019-06-26
- 解密Prompt系列16. LLM對齊經驗之資料越少越好?LTD & LIMA & AlpaGasus2023-10-05解密
- 軟體破解初體驗之 MacroClip 2000.2.7 程式碼修改破解 (15千字)2001-10-09Mac
- 破解軟體下載網站有哪些?破解軟體分享網站合集2020-06-21網站
- 軟體複用導致的軟體依賴問題 - research!rsc2019-01-24
- 我的第一個破解軟體,試驗成功!2013-12-26
- 今天幫朋友破解了一個商用軟體,累......2008-05-23
- 軟體測試之資料庫系列六2019-08-29資料庫
- 軟體測試之資料庫系列五2019-08-28資料庫
- 軟體測試之資料庫系列四2019-08-27資料庫
- 軟體測試之資料庫系列三2019-08-27資料庫
- 軟體測試之資料庫系列二2019-08-26資料庫
- 軟體設計模式系列之十六——命令模式2023-09-27設計模式
- xp下軟體限制策略限制軟體以及破解方法2006-09-11
- Windows 軟體包2021-12-07Windows
- Windows 神仙軟體2024-03-11Windows
- 一個超容易破解的軟體! (5千字)2001-01-21
- 【JVM】JVM系列之JVM體系(一)2016-02-21JVM
- 請高手破解這款軟體!2000-11-28
- 稀裡糊塗系列之閉包中介軟體2019-03-04
- 軟體設計模式系列之十二——外觀模式2023-09-22設計模式
- 軟體設計模式系列之十三——享元模式2023-09-23設計模式
- 軟體設計模式系列之十八——迭代器模式2023-09-28設計模式
- 軟體設計模式系列之十九——中介者模式2023-09-29設計模式
- 軟體設計模式系列之十——組合模式2023-09-20設計模式
- 老夫子軟體之-----國慶版本系列2015-11-15
- Add Remove Plus! 2000 v2.0破解手記 附:Windows
優化大師 3.3的破解方法 (4千字)2001-02-02REMWindows優化
- 破解心得之Windows優化大師篇2015-11-15Windows優化
- Mouse Odometer v2.0破解(入門) (5千字)2000-10-01