Beyond Compare 1.9f註冊演算法&序號產生器 (8千字)
目標:Beyond Compare 1.9f
下載:www.scootersoftware.com
簡介:功能強大的檔案比較工具,正是我要找的
原因:論壇上有人介紹,下載後發現要註冊
程式出了2.0
beta版,看了一下,難度較大,blowfish大哥說1.9版比較好用,先用著先吧.此次破解比較簡單,程式初執行出現提示框,選輸入註冊碼按鍵,填入註冊資訊,下bpx
hmemcpy,查詢後用bpm,除錯過程中發現程式用了WritePrivateProfileStringA的函式,原來程式先將註冊資訊寫入INI檔案,再讀出做運算,錯誤的話要求你重新輸入.
在windows目錄下發現beyond32.ini檔案,開啟後找到以下注冊資訊:
[Registration]
Version=1.9f
InstallCode=000091FD
Evaluation=0006A1EE
Name=Sam
Von
Organization=CCG
Registration #=67676767 <---假註冊碼
既然程式已將註冊資訊寫入INI檔案,於是用bpx getprivateprofilestringa來跟蹤,在4AA479處程式已將以上資訊讀入記憶體,經過一段程式碼,程式用以上的版本號1.9f算出InstallCode和Evaluation,可能是安裝時間和使用天數,這些不用理它,我們主要是找到算註冊碼的地方,下面是演算法部分:
==Part I===========================================
之前的程式碼你會發現程式將我的註冊名和組織名與字串"Beyond Compare 1"連在一起變成"Beyond Compare 1Sam VonCCG",然後變成全大寫.下面的程式碼將字串的每個字元做變形然後儲存在原處,其中有3個分支,字元和數字分開處理,如果是空格就去掉.
0167:004A8CAF MOV EAX,[EBP-04] <---指向大寫的字串
0167:004A8CB2 MOV BL,[EAX+ESI-01]<---第一位"B"
0167:004A8CB6 MOV EAX,EBX
0167:004A8CB8
ADD AL,BF
0167:004A8CBA SUB
AL,1A
0167:004A8CBC JNC 004A8CDA
<---判斷字元or數字or空格
0167:004A8CBE LEA EAX,[EBP-04]
0167:004A8CC1 CALL 004040D0 <---不用進入
0167:004A8CC6 MOV EDX,[EBP-04]
0167:004A8CC9
XOR EDX,EDX
0167:004A8CCB MOV
DL,BL
0167:004A8CCD SUB EDX,BYTE +41
0167:004A8CD0
ADD EDX,BYTE +0A
0167:004A8CD3 MOV
[EAX+ESI-01],DL<---字元的處理
0167:004A8CD7 INC
ESI
0167:004A8CD8 JMP SHORT 004A8D0D
0167:004A8CDA
MOV EAX,[EBP-04]
0167:004A8CDD MOV
EAX,EBX
0167:004A8CDF ADD AL,D0
0167:004A8CE1
SUB AL,0A
0167:004A8CE3 JNC
004A8CFE <---判斷數字or空格
0167:004A8CE5 LEA
EAX,[EBP-04]
0167:004A8CE8 CALL 004040D0
<---不用進入
0167:004A8CED MOV EDX,[EBP-04]
0167:004A8CF0 XOR EDX,EDX
0167:004A8CF2
MOV DL,BL
0167:004A8CF4 SUB
EDX,BYTE +30
0167:004A8CF7 MOV [EAX+ESI-01],DL<---數字的處理
0167:004A8CFB INC ESI
0167:004A8CFC
JMP SHORT 004A8D0D
0167:004A8CFE LEA
EAX,[EBP-04]
0167:004A8D01 MOV ECX,01
0167:004A8D06 MOV EDX,ESI
0167:004A8D08 CALL
00404148 <---去掉空格
0167:004A8D0D MOV
EAX,[EBP-04]
0167:004A8D10 CALL 00403F00
<---只是取原字串長度
0167:004A8D15 CMP
ESI,EAX
0167:004A8D17 JNG 004A8CAF
最後我們得到資料:0B 0E 22 18 17 0D 0C 18-16 19 0A 1B 0E 01 1C 0A 16 1F 18 17 0C
0C 10 (已去掉空格),於是bpm這個地址,找到以下程式碼:
==Part II========================================
0167:004A180C PUSH EBX
0167:004A180D PUSH
ESI
0167:004A180E PUSH EDI
0167:004A180F
MOV EBX,EDX
0167:004A1811 XOR
EDX,EDX
0167:004A1813 TEST CX,CX
0167:004A1816
JNA 004A1841
0167:004A1818 MOVZX ESI,DX
0167:004A181B MOVZX ESI,BYTE [EBX+ESI] <---資料第一位0B
0167:004A181F MOV EDI,EAX <---eax=0
0167:004A1821 SHR EDI,18
0167:004A1824 XOR
ESI,EDI
0167:004A1826 AND ESI,FF
<---保證esi為000000XX的形式
0167:004A182C MOV
ESI,[ESI*4+004B8A4C]<---查表得到一個數
0167:004A1833 SHL
EAX,08
0167:004A1836 XOR ESI,EAX
0167:004A1838
MOV EAX,ESI
0167:004A183A INC
EDX
0167:004A183B DEC ECX
0167:004A183C
TEST CX,CX <---迴圈完後eax=B8368083
0167:004A183F
JA 004A1818
0167:004A1841 POP
EDI
0167:004A1842 POP ESI
0167:004A1843
POP EBX
0167:004A1844 RET
看到程式的演算法很簡單,猜想eax的值就是註冊碼,退出後將eax轉換成10進位制,輸入後提示錯誤,直接將它按字元形式輸入,註冊成功:-)
為了寫序號產生器,我們必須得到程式資料表的內容,從4A182C處可以判斷表長應為3F8位左右,dump下來,寫出以下注冊機.
==KeyGen===========================================
請將下面源程式儲存為.rek檔案,用序號產生器編寫器編譯,序號產生器編寫器1.73測試透過!
.const
CharUpperBuffA PROTO :DWORD,:DWORD
.data
szHomePage
db "http://www.365hz.net",0
szEmail db "mailto:ljyljx@163.com",0
szErrMess db "輸入的序列號不正確!",0
DATA dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
dd 000000000h,05BD4B01Bh,0B3687D81h,0E8BCCD9Ah
dd 066D0FB02h,03D044B19h,0D5B88683h,08E6C3698h
dd 0CDA1F604h,09675461Fh,07EC98B85h,0251D3B9Eh
dd
0AB710D06h,0F0A5BD1Dh,018197087h,043CDC09Ch
szDATA db "BEYONDCOMPARE1"
db 50 dup(0)
szXor16 db "%lX",0
szOut
db 20 dup(0)
.code
lea edi,szDATA+14
mov eax,0
mov ecx,50
rep stosb
invoke lstrcat,addr szDATA,addr hInput1
invoke lstrcat,addr
szDATA,addr hInput2
invoke lstrlen,addr szDATA
push eax
invoke
CharUpperBuffA,addr szDATA,eax ;<--此段連線字串並轉為大寫
mov eax,20h
lea edi,szDATA
pop ecx
PRO1:
repnz scasb
jnz PRO2
mov esi,edi
push edi
dec edi
push ecx
rep movsb
mov [edi],byte
ptr 0
pop ecx
pop edi
jmp PRO1 ;<--此段去掉空格
PRO2:
invoke lstrlen,addr szDATA
mov edi,eax
mov esi,1
PRO5:
lea eax,szDATA
mov bl,[eax+esi-1]
mov ecx,ebx
add
cl,0BFh
sub cl,1Ah
jnc PRO3
xor edx,edx
mov dl,bl
sub
edx,byte ptr 41h
add edx,byte ptr 0Ah
mov [eax+esi-1],dl
inc esi
jmp PRO4
PRO3:
xor edx,edx
mov dl,bl
sub edx,byte
ptr 30h
mov [eax+esi-1],dl
inc esi
jmp PRO4
PRO4:
cmp esi,edi
jng PRO5 ;<--以上是Part I的演算法
mov ecx,edi
mov ebx,eax
xor eax,eax
xor edx,edx
PRO6:
movzx esi,dx
movzx esi,byte ptr [ebx+esi]
mov edi,eax
shr
edi,18h
xor esi,edi
and esi,0FFh
mov esi,[esi*4+DATA]
shl
eax,08
xor esi,eax
mov eax,esi
inc edx
dec ecx
test cx,cx
ja PRO6 ;<--Part II演算法
invoke wsprintf,addr
szOut,addr szXor16,eax
lea eax,szOut
-=End=-
_/_/_/
_/ _/_/_/
_/_/_/ _/_/
_/_/ _/ _/
_/ _/ _/
_/ _/
_/ _/ _/ _/
_/_/_/
_/_/_/ _/ _/ _/
Sam.com
6:19 2002-4-28
相關文章
- 中文Beyond Compare 4安裝包+Beyond Compare 4序號產生器金鑰2023-11-22
- 音樂處理acoustica2.0註冊碼破解及序號產生器 (8千字)2002-04-06
- Audio compositor註冊碼及序號產生器 (5千字)2002-04-06
- 鬥地主4.0註冊演算法,序號產生器在OCG論壇
(22千字)2015-11-15演算法
- AddRemove 4GOOD 註冊演算法+序號產生器2003-07-25REMGo演算法
- 蒼鷹象棋1.0
註冊演算法分析和序號產生器2004-05-16演算法
- Quickness 3.1
註冊演算法分析 + 序號產生器原始碼(tc2) (15千字)2003-04-13UI演算法原始碼
- Flash Cam 1.79註冊演算法分析與序號產生器制作以及爆破方法
(7千字)2015-11-15演算法
- AntiSpy PRO 1.02
註冊演算法分析 + 序號產生器原始碼(tc2) (12千字)2003-04-11演算法原始碼
- 《中華壓縮 6.01》註冊碼破解及序號產生器 (14千字)2001-08-19
- 守財奴1.9註冊分析+序號產生器原始碼2015-11-15原始碼
- winzip序號產生器 (1千字)2001-04-12
- 進位專家註冊演算法分析及序號產生器C原始碼2004-08-19演算法原始碼
- Universe 1.63註冊碼生成分析及序號產生器原碼(上) (2千字)2001-11-12
- MobileSearch(手機號碼歸屬地查詢) v2.0註冊演算法,附序號產生器~~~~~~
(30千字)2002-03-29演算法
- ePublisher Gold v1.3 的註冊碼及序號產生器2000-12-03Go
- CMailServer V3.2 註冊碼演算法及CrackCode
2000 的序號產生器 (4千字)2001-08-18AIServer演算法
- 序號產生器制分析: (1千字)2001-11-19
- Lc3&Lc4
註冊演算法分析及序號產生器的製作2004-06-18演算法
- mIRC v5.81版註冊碼演算法分析和序號產生器編寫2000-12-11演算法
- 社群遊戲伴侶
V1.0註冊碼的計算,序號產生器 (30千字)2003-05-09遊戲
- NetTerm 4.2.c註冊過程分析及序號產生器制作SBS (6千字)2015-11-15
- winzip的通用序號產生器 (2千字)2001-12-10
- 影音神探V2.02 bY E語言 (註冊碼與爆破附記憶體序號產生器) (8千字)2015-11-15記憶體
- 時間到了 v1.5 簡單註冊演算法分析
+ 序號產生器原始碼(tc2) (9千字)2003-04-12演算法原始碼
- SysSync Version 1.02簡單演算法分析+VB序號產生器原始碼 (8千字)2015-11-15演算法原始碼
- 序號產生器合集2024-03-17
- 美萍安全衛士V8.45序號產生器制作分析過程,及序號產生器! (11千字)2001-10-28
- Gif2Swf Ver 2.1 TC20序號產生器 && MASM32序號產生器 (4千字)2001-12-10ASM
- 印表機監控王
V3.08註冊演算法分析及序號產生器原始碼2015-11-15演算法原始碼
- supercapture3.0的版序號產生器!
(4千字)2002-04-23APT
- IrfanView 序號產生器分析(初級版)
(13千字)2015-11-15View
- 製作mIRC6.02序號產生器(給別人寫的初學者序號產生器教材) (14千字)2015-11-15
- 製作自己的記憶體序號產生器--------檔案隱藏精靈註冊碼獲取 (4千字)2015-11-15記憶體
- Advanced Dialer v2.5演算法分析(附序號產生器) (3千字)2002-04-17演算法
- EmEditor V3.29和它的序號產生器 (12千字)2015-11-15
- 【原創】FileRecoveryAngel 演算法分析+序號產生器2015-11-15演算法
- Uninstall
Manager V4.20簡單註冊演算法+加密演算法分析+序號產生器C++原始碼:-)2004-10-30演算法加密C++原始碼