用DeDe破解 e族百變桌面 V5.1+用DEIPHI5寫序號產生器 (13千字)
用DeDe破解 e族百變桌面 V5.1+用DEIPHI5寫序號產生器
軟體名稱:e族百變桌面 V5.1
軟體簡介:歡迎使用e族百變桌面軟體。提供25種變換桌面的方式,讓您的桌面煥然一新。操作簡單,無需費力學習。支援多種Internet流行圖片格式。靈活設定變換背景及區域。將桌布檔案打包,方便儲存、轉發。將桌布包展開,還原圖片檔案……
未註冊版限制:1、不限加入桌布檔案列表中的圖片數量。
2、可以選擇是否在桌面顯示軟體標緻。
下載地址:http://ln.skycn.net/down/ePaper51.exe
破解工具:TRW2000 1.22漢化版、DeDe2.50、WinHex
10.44 SR-3漢化版。
破解人:飛鷹[BCG]
E-mail:flithawk@163.com
網址:http://flithawk.longcity.net
破解步驟:
一、用DeDe破解 e族百變桌面 V5.1:
首先,用 DeDe 反編譯該軟體後,選擇進入“Procedures”選項,經過研究發現“frmBuy”窗體為註冊時呼叫的窗體,其中的“bnNextClick”事件為註冊碼檢驗過程。所以,在
DeDe 中選擇“Procedures”選項-->單擊“frmBuy”窗體-->雙擊“bnNextClick”事件-->我們就可以來到下面這裡:
004BA694 55
push ebp
==>進入後,我們首先來到上面這裡
004BA695
8BEC mov
ebp, esp
004BA697 B90C000000
mov ecx, $0000000C
004BA69C 6A00
push $00
004BA69E 6A00
push $00
004BA6A0 49
dec ecx
004BA6A1 75F9
jnz 004BA69C
004BA6A3
53 push
ebx
004BA6A4 56
push esi
004BA6A5 57
push edi
004BA6A6 8945FC
mov [ebp-$04], eax
004BA6A9 33C0
xor eax, eax
004BA6AB
55 push
ebp
004BA6AC 68B7AA4B00
push $004BAAB7
***** TRY
|
004BA6B1 64FF30
push dword ptr fs:[eax]
004BA6B4 648920
mov fs:[eax], esp
004BA6B7 8B45FC
mov eax, [ebp-$04]
......(省略中間的一些彙編程式碼)
* Reference to: controls.TControl.GetText(TControl):System.String;
| or: controls.TControl.GetText(TControl):System.String;
|
004BA79B E88094F8FF
call 00443C20
004BA7A0 8B45CC
mov eax, [ebp-$34]
* Reference
to: sysutils.StrToInt64(System.AnsiString):System.Int64;
|
004BA7A3
E860E7F4FF call 00408F08
004BA7A8 8BD8
mov ebx, eax
==>上面的 ebx 中存放著你輸入的註冊碼
004BA7AA
8B45FC mov
eax, [ebp-$04]
* Reference to field TBuyForm.OFFS_0380
|
004BA7AD
8B8080030000 mov eax, [eax+$0380]
==>上面的 eax 中存放著機器碼
004BA7B3 B101
mov cl, $01
004BA7B5 8BD3
mov edx,
ebx
==>上面的 edx 中存放著你輸入的註冊碼
|
004BA7B7 E890F5FFFF
call 004B9D4C
==>上面的此Call為註冊碼演算法過程,應該追入
* Reference to pointer to GlobalVar_004CDDE8
|
004BA7BC
8B159CBD4C00 mov edx, [$4CBD9C]
004BA7C2 8802
mov [edx], al
* Reference to pointer to GlobalVar_004CDDE8
|
004BA7C4 A19CBD4C00
mov eax, dword ptr [$4CBD9C]
004BA7C9 803800
cmp byte ptr [eax], $00
004BA7CC 7441
jz 004BA80F
==>判斷你輸入的註冊碼是否正確;不正確則跳轉,正確則不跳轉
004BA7CE 8B45FC mov
eax, [ebp-$04]
* Reference to field TBuyForm.OFFS_0388
|
004BA7D1 C7808803000004000000 mov dword ptr [eax+$0388],
$00000004
004BA7DB 8BC3
mov eax, ebx
004BA7DD 33D2
xor edx, edx
004BA7DF 52
push edx
004BA7E0 50
push eax
004BA7E1
8D45C8 lea
eax, [ebp-$38]
* Reference to: sysutils.IntToStr(System.Int64):System.AnsiString;overload;
| or: sysutils.IntToStr(System.Int64):System.AnsiString;overload;
|
004BA7E4 E897E6F4FF
call 00408E80
004BA7E9 8B55C8
mov edx, [ebp-$38]
004BA7EC
8B45FC mov
eax, [ebp-$04]
* Reference to control TBuyForm.lbnRnCode : N.A.
|
004BA7EF 8B8040030000 mov
eax, [eax+$0340]
* Reference to: controls.TControl.SetText(TControl;System.String);
| or: controls.TControl.SetText(TControl;System.String);
|
004BA7F5 E85694F8FF
call 00443C50
004BA7FA 8B45FC
mov eax, [ebp-$04]
* Reference
to control TBuyForm.bnClose : N.A.
|
004BA7FD 8B8000030000
mov eax, [eax+$0300]
* Possible
String Reference to: '完成'
|
==>上面是註冊成功後,出現的正確提示資訊
004BA803
BAD0AA4B00 mov edx, $004BAAD0
* Reference to: controls.TControl.SetText(TControl;System.String);
| or: controls.TControl.SetText(TControl;System.String);
|
004BA808 E84394F8FF
call 00443C50
004BA80D EB0D
jmp 004BA81C
004BA80F
8B45FC mov
eax, [ebp-$04]
* Reference to field TBuyForm.OFFS_0388
|
004BA812
C7808803000005000000 mov dword ptr [eax+$0388], $00000005
004BA81C 33C0
xor eax, eax
004BA81E 5A
pop edx
004BA81F 59
pop
ecx
004BA820 59
pop ecx
004BA821 648910
mov fs:[eax], edx
004BA824
EB17 jmp
004BA83D
****** EXCEPT
|
004BA826 E9DD95F4FF
jmp 00403E08
004BA82B 8B45FC
mov eax, [ebp-$04]
* Reference to field TBuyForm.OFFS_0388
|
004BA82E C7808803000005000000
mov dword ptr [eax+$0388], $00000005
* Reference to: system.@DoneExcept;
| or: system.@DoneExcept;
|
004BA838
E83399F4FF call 00404170
****** END
|
004BA83D 8B45FC
mov eax, [ebp-$04]
* Reference
to field TBuyForm.OFFS_0388
|
004BA840 83B88803000005
cmp dword ptr [eax+$0388], +$05
004BA847
7513 jnz
004BA85C
004BA849 8B45FC
mov eax, [ebp-$04]
* Reference to control TBuyForm.lblReason
: N.A.
|
004BA84C 8B8070030000
mov eax, [eax+$0370]
* Possible String Reference to: '原因:輸入的註冊碼不正確。'
|
==>上面是註冊失敗後,出現的錯誤提示資訊
004BA852 BAE0AA4B00
mov edx, $004BAAE0
* Reference
to: controls.TControl.SetText(TControl;System.String);
|
or: controls.TControl.SetText(TControl;System.String);
|
004BA857 E8F493F8FF call
00443C50
004BA85C 8B45FC
mov eax, [ebp-$04]
* Reference to control
TBuyForm.bnPrev : N.A.
|
004BA85F 8B80FC020000
mov eax, [eax+$02FC]
004BA865 33D2
xor edx,
edx
004BA867 8B08
mov ecx, [eax]
* Possible reference to virtual method
TN.A..OFFS_64
|
004BA869 FF5164
call dword ptr [ecx+$64]
004BA86C
8B45FC mov
eax, [ebp-$04]
跟蹤進入 004B9D4C 後,我們來到這裡:
004B9D4C
55 push
ebp
004B9D4D 8BEC
mov ebp, esp
004B9D4F 81C4F4FEFFFF
add esp, $FFFFFEF4
004B9D55
53 push
ebx
004B9D56 56
push esi
004B9D57 33DB
xor ebx, ebx
004B9D59 899DF4FEFFFF mov
[ebp+$FFFFFEF4], ebx
004B9D5F 895DF8
mov [ebp-$08], ebx
004B9D62
8955FC mov
[ebp-$04], edx
==>上面是把你輸入的註冊碼(edx)存入 [ebp-$04] 中
004B9D65 33D2
xor edx,
edx
004B9D67 55
push ebp
004B9D68 68119E4B00
push $004B9E11
***** TRY
|
004B9D6D 64FF32
push dword ptr fs:[edx]
004B9D70 648922
mov fs:[edx], esp
004B9D73
33DB xor
ebx, ebx
004B9D75 35A09EF21B
xor eax, $1BF29EA0
==>上面是把你輸入的機器碼(eax) 異或 0x1BF29EA0 後得到正確的註冊碼
004B9D7A 3B45FC
cmp eax, [ebp-$04]
==>把計算出來的正確註冊碼(eax)與你輸入的註冊碼([ebp-$04])進行比較
004B9D7D 7502
jnz 004B9D81
==>如果相等,則不跳轉;不相等,則跳轉
004B9D7F
B301 mov
bl, $01
004B9D81 84C9
test cl, cl
004B9D83 746B
jz 004B9DF0
004B9D85 68FF000000 push
$000000FF
004B9D8A 8D85F8FEFFFF
lea eax, [ebp+$FFFFFEF8]
004B9D90 50
push eax
* Reference to: kernel32.GetWindowsDirectoryA()
|
==>從這裡往下應該是檢測你計算機上
Windows 的安裝目錄
004B9D91 E896D0F4FF
call 00406E2C
004B9D96 8D95F4FEFFFF
lea edx, [ebp+$FFFFFEF4]
004B9D9C
8D85F8FEFFFF lea eax, [ebp+$FFFFFEF8]
* Reference to: sysutils.StrPas(System.PChar):System.AnsiString;
| or: sysutils.StrPas(System.PChar):System.AnsiString;
|
004B9DA2 E8C5F9F4FF
call 0040976C
004B9DA7 FFB5F4FEFFFF
push dword ptr [ebp+$FFFFFEF4]
004B9DAD
68289E4B00 push $004B9E28
* Possible String Reference to: 'nwinfo.dat'
|
==>從這裡往下應該是在
Windows 的安裝目錄下建立一個名為nwinfo.dat的檔案,用於存放你輸入的註冊碼
004B9DB2 68349E4B00
push $004B9E34
004B9DB7
8D45F8 lea
eax, [ebp-$08]
004B9DBA BA03000000
mov edx, $00000003
|
004B9DBF E848ACF4FF
call 00404A0C
004B9DC4
68FFFF0000 push $0000FFFF
004B9DC9 8B4DF8
mov ecx, [ebp-$08]
004B9DCC B201
mov dl, $01
* Reference
to class TFileStream
|
004B9DCE A1D04B4100
mov eax, dword ptr [$414BD0]
|
004B9DD3 E820FBF5FF call
004198F8
004B9DD8 8BF0
mov esi, eax
004B9DDA 8D55FC
lea edx, [ebp-$04]
004B9DDD B904000000 mov
ecx, $00000004
004B9DE2 8BC6
mov eax, esi
|
004B9DE4
E857F8F5FF call 00419640
004B9DE9 8BC6
mov eax, esi
|
004B9DEB E8389BF4FF
call 00403928
004B9DF0
33C0 xor
eax, eax
004B9DF2 5A
pop edx
004B9DF3 59
pop ecx
004B9DF4 59
pop ecx
004B9DF5 648910
mov fs:[eax], edx
****** FINALLY
|
004B9DF8 68189E4B00
push $004B9E18
004B9DFD 8D85F4FEFFFF
lea eax, [ebp+$FFFFFEF4]
* Reference to:
system.@LStrClr(String);
|
004B9E03 E88CA8F4FF
call 00404694
004B9E08 8D45F8
lea eax, [ebp-$08]
* Reference to: system.@LStrClr(String);
|
004B9E0B
E884A8F4FF call 00404694
004B9E10 C3
ret
004B9E11 E9A6A2F4FF
jmp 004040BC
004B9E16 EBE5
jmp 004B9DFD
****** END
|
004B9E18 8BC3
mov eax, ebx
004B9E1A 5E
pop
esi
004B9E1B 5B
pop ebx
004B9E1C 8BE5
mov esp, ebp
004B9E1E
5D pop
ebp
004B9E1F C3
ret
根據上面的分析,我們就已經知道了軟體註冊的全過程。所以,下面我們再次執行該軟體,選擇授權方式為“註冊碼方式”,輸入假的註冊碼;啟動
Trw 2000 並下斷點 bpx 004B9D7A,回到軟體的註冊介面後單擊“下一步”按鈕,就會被 Trw 2000 斷下進入除錯介面,下命令 ? eax
就可以知道你正確的註冊碼了。但無論註冊成功與否,軟體都會在你的 Windows 安裝目錄下生成一個名為 nwinfo.dat 檔案,該檔案大小為4個位元組,該檔案中存放著你輸入的註冊碼(不論是真碼還是假碼)。
二、用DEIPHI5寫序號產生器:
該軟體的註冊演算法很簡單:就是用它給你的機器號來與值0x1BF29EA0進行異或後就得到了真的註冊碼。
例如:我的機器號是37851211,則真的註冊碼就是:37851211 Xor 468885152=431165163(因為 0x1BF29EA0
的10進位制數為 468885152)。
上面我說過,無論該軟體是否成功註冊,它都會建立一個名為 nwinfo.dat 的檔案,那麼這個檔案中的內容是什麼呢?用16進位制編輯器(WinHex)開啟後你會發現這樣的數字
EB0EB319,把這串數字反過來後得到:19B30EEB,它的10進位制數正好是 431165163,這不就是對應我機器的該軟體的正確註冊碼,這下大家應該知道該檔案的大小為什麼是4個位元組了吧!如果我輸入假註冊碼:5656,則該檔案中的數字是
18160000,反過來後得到:1618,它的10進位制數正好是 5656,也就是我輸入的假註冊碼。經過我的測試後,發現無論你輸入的註冊碼是多少位,該檔案的大小都是4個位元組,也就是
8 位16進位制數字。所以,該軟體真的註冊碼只可能是8位十六進位制數字,也就是9位十進位制數字。
瞭解完該軟體的註冊及生成註冊檔案的全部過程後,我就開始用
DEIPHI5 編寫了該軟體的序號產生器,原始碼如下:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Memo1:
TMemo;
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
result:integer;
implementation
{$R *.DFM}
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key:
Char);
begin
If (Key<>chr(16)) and (Edit1.Text<>'') then
Begin
result:=StrToInt(Edit1.Text) Xor 468885152;
Edit2.Text:=IntToStr(result);
End;
end;
end.
該序號產生器在 Win9X/2K/XP 下測試透過。
序號產生器下載地址:http://down.9down.com/crack/成員目錄/flithawk/e族百變桌面%20V5.1%20序號產生器.zip
Crack
by 飛鷹[BCG] flithawk@163.com 2002.4.18
歡迎光臨漢化新世紀: http://www.hanzify.org
相關文章
- Kalua Cocktails 1.1完全破解,內附彙編序號產生器(用序號產生器編寫器,並有它的使用教程)
(22千字)2002-02-27AI
- IrfanView 序號產生器分析(初級版)
(13千字)2015-11-15View
- AlgoLab PtVector的破解及序號產生器的編寫 (17千字)2001-05-04Go
- 用C++編寫序號產生器的一點技巧2015-11-15C++
- winzip序號產生器 (1千字)2001-04-12
- E族百變桌面7.2註冊流程分析2015-11-15
- NetTalk破解與序號產生器(高手勿進) (10千字)2001-09-20
- 續未完成破解,寫出它的序號產生器,3k。。。 (8千字)2001-07-09
- 用keymake制序號產生器實戰~高手莫入~~ (1千字)2001-09-30
- 序號產生器制分析: (1千字)2001-11-19
- 破解accoustica
2.21(帶序號產生器)----讓高手見笑了:) (11千字)2002-03-31
- Resource
Builder 1.1.0 完全破解~~附彙編序號產生器 (10千字)2015-11-15UI
- 製作mIRC6.02序號產生器(給別人寫的初學者序號產生器教材) (14千字)2015-11-15
- 網頁加密器(HTMLEncryptor1.1)破解及序號產生器 (1千字)2001-04-22網頁加密HTML
- hellfire2000破解過程及序號產生器的編寫(上) (4千字)2001-01-19
- ZTZ-IE網路瀏覽器的破解與序號產生器,應付PETERCHEN用的 (8千字)2001-08-11瀏覽器
- 一個CrackMe的破解以及序號產生器的製作
(4千字)2001-08-16
- 文書處理大師 3.0 破解~~~附序號產生器 (17千字)2002-03-24
- 3DAxy貪吃蛇 AxySnake 破解與序號產生器 (21千字)2015-11-153D
- winzip的通用序號產生器 (2千字)2001-12-10
- Navicat Premiumx64 使用序號產生器啟用2018-11-12REM
- xplorer2之破解和序號產生器2004-12-05
- 010
Editorv1.3破解(序號產生器)2004-05-17
- 《DesktopX v1.0》PJ 記錄 + 序號產生器原始碼 (13千字)2015-11-15原始碼
- 序號產生器合集2024-03-17
- SWF探索者XP 1.2(swfexplorer)破解+分析+序號產生器
(18千字)2002-04-14
- UltraEdit-32 8.10.1.0的破解及序號產生器的生成 (15千字)2001-05-15
- KEYGENNING4NEWBIES #7破解過程+序號產生器 (6千字)2001-08-21
- Readbook v1.4破解實戰(天意II+W32dasm破解並用crackcode2000來寫序號產生器)
(3千字)2000-09-09ASM
- 美萍安全衛士V8.45序號產生器制作分析過程,及序號產生器! (11千字)2001-10-28
- Gif2Swf Ver 2.1 TC20序號產生器 && MASM32序號產生器 (4千字)2001-12-10ASM
- 用“破解除錯”的方法修改序號產生器(SDK)功能――獻給自由的FCG和所有Cracker (23千字)2015-11-15除錯
- 破解QQ圖形留言器3.0(不是OICQ圖形留言系統)及序號產生器編寫!! (6千字)2001-07-15
- 貼彩虹狗破解工具的序號產生器 (727字)2001-07-01
- 檔案密使2.0暴力破解及序號產生器的編寫―好久沒寫過東西了。 (11千字)2001-07-10
- Photoshop破解版百度網盤(百度雲)資源附序號產生器2022-01-09
- Pexplorer 1.70 完全破解(KeyFile&Name+Code),附序號產生器~~~~~~~~~
(17千字)2002-04-03
- 《中華壓縮 6.01》註冊碼破解及序號產生器 (14千字)2001-08-19