批量更名專家V1.5 Build 1111
演算法分析――批量更名專家V1.5 Build 1111
下載地址: http://www.skycn.com/soft/7412.html
軟體大小:
888 KB
軟體語言: 簡體中文
軟體類別: 國產軟體 / 免費版 / 檔案更名
應用平臺: Win9x/NT/2000/XP
加入時間:
2002-11-11 14:32:01
下載次數: 12853
推薦等級: ***
開 發 商: http://zigsoft.yeah.net
【軟體簡介】:
批量更名專家是一款優秀的批量檔案改名工具,更名速度極快。簡明的資源管理器介面,上手極為方便。提供批量修改檔案屬性和日期,修改副檔名,修改大小寫,可以插入,刪除,替換,獨特的序數改名功能,直接編輯檔名,根據MP3檔案的Id3資訊改名等。
【軟體限制】:30天試用。
【作者宣告】:初學Crack,只是感興趣,沒有其它目的。失誤之處敬請各大俠賜教!
【破解工具】:TRW2000娃娃修改版、FI2.5、AspackDie、RegMon、W32Dasm8.93黃金版
―――――――――――――――――――――――――――――
【過
程】:
呵呵,這個軟體簡單,很多朋友都已經解過了。在 天空 溜達,看見它的個頭不大,索性DOWN下來練練手。
找註冊碼挺簡單,但是要細細的分析演算法可就需要耐心與毅力了。
唉,菜鳥分析演算法真難呀!演算法雖簡單卻轉來繞去,讓我頭大。
填入試煉資訊。
使用者名稱:flysky12(不能少於8位)
試煉碼:13572468
―――――――――――――――――――――――――――――
軟體需要重啟驗證註冊碼,因此軟體肯定把註冊碼儲存在登錄檔或其它檔案中。用RegMon監測,在登錄檔中發現了它留下的“尾巴”。
呵呵,發現了"RWCode"的鍵名,老方法,在反彙編程式碼裡搜尋RWCode,簡簡單單我們就找到了核心:4B8E92。於是,首先在TRW裡下BPX 4B8E92,然後重新載入程式。F5,程式被攔下!
―――――――――――――――――――――――――――――
1、使用者名稱不能少於8位
:004B979C
E81FA8F4FF call 00403FC0
:004B97A1
83F808 cmp eax,
00000008
====>比較使用者名稱是否少於8位?
:004B97A4
7D1D jge
004B97C3
====>少於8位則不跳則OVER!
:004B97A6
6A00 push
00000000
* Possible
StringData Ref from Code Obj ->"警告框"
|
:004B97A8 B930994B00 mov
ecx, 004B9930
* Possible
StringData Ref from Code Obj ->"使用者名稱太短或者註冊號不對!"
|
:004B97AD BA38994B00
mov edx, 004B9938
―――――――――――――――――――――――――――――
2、開始追蹤!
*
Possible StringData Ref from Code Obj ->"RWCode"
====>註冊資訊存放位置!
:004B8E92
BA28904B00 mov edx, 004B9028
====>我們攔在這兒!
F10走,多加註意!經過一個RET,很快的我們就來到了核心!
……
……
:004B8EF0 8D55F0
lea edx, dword ptr [ebp-10]
:004B8EF3 8B45FC
mov eax, dword ptr [ebp-04]
====>D EAX=我們輸入的試煉資訊
:004B8EF6 E845FDFFFF
call 004B8C40
====>演算法CALL!F8進入!
:004B8EFB
8B45F0 mov eax,
dword ptr [ebp-10]
:004B8EFE 8B55F8
mov edx, dword ptr [ebp-08]
:004B8F01 E8CAB1F4FF
call 004040D0
====>比較CALL!F8進入!
:004B8F06
0F85AB000000 jne 004B8FB7
====>跳則OVER!
:004B8F0C B201
mov dl, 01
:004B8FA7 8B45F4 mov eax, dword ptr [ebp-0C]
*
Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004B8EE0(C),
:004B8EEA(C), :004B8F06(C)
|
:004B8FB7 33C0
xor eax, eax
―――――――――――――――――――――――――――――
3、F8進入演算法CALL:004B8EF6
call 004B8C40
注:下面的“1、2、3……”是指迴圈的次序,最好自己跟蹤一下,很容易暈頭的。呵呵,讓我難受。關鍵結果下面我都標上
******** 的記號!
*
Referenced by a CALL at Address:
|:004B8EF6
|
:004B8C40 55
push ebp
:004B8C41
8BEC mov
ebp, esp
:004B8C43 B904000000 mov
ecx, 00000004
* Referenced
by a (U)nconditional or (C)onditional Jump at Address:
|:004B8C4D(C)
|
:004B8C48
6A00 push
00000000
:004B8C4A 6A00
push 00000000
:004B8C4C 49
dec ecx
:004B8C4D 75F9
jne 004B8C48
:004B8C4F
51 push
ecx
:004B8C50 53
push ebx
:004B8C51 56
push esi
:004B8C52 57
push edi
:004B8C53 8955F8
mov dword ptr [ebp-08],
edx
:004B8C56 8945FC
mov dword ptr [ebp-04], eax
:004B8C59 8B45FC
mov eax, dword ptr [ebp-04]
====>使用者名稱入EAX
:004B8C5C E813B5F4FF
call 00404174
:004B8C61 33C0
xor eax, eax
:004B8C63 55
push ebp
:004B8C64
68DC8D4B00 push 004B8DDC
:004B8C69
64FF30 push dword
ptr fs:[eax]
:004B8C6C 648920
mov dword ptr fs:[eax], esp
:004B8C6F B201
mov dl, 01
*
Possible StringData Ref from Code Obj ->"|"A"
|
:004B8C71 A1F8034100
mov eax, dword ptr [004103F8]
:004B8C76 E849A3F4FF
call 00402FC4
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B8C02(C)
|
:004B8C7B
8945EC mov dword
ptr [ebp-14], eax
:004B8C7E 33C0
xor eax, eax
:004B8C80 55
push ebp
:004B8C81 689A8D4B00
push 004B8D9A
:004B8C86 64FF30
push dword ptr fs:[eax]
:004B8C89
648920 mov dword
ptr fs:[eax], esp
:004B8C8C 8D45F4
lea eax, dword ptr [ebp-0C]
:004B8C8F 8B55FC
mov edx, dword ptr [ebp-04]
:004B8C92
E841B1F4FF call 00403DD8
:004B8C97
8B45F4 mov eax,
dword ptr [ebp-0C]
:004B8C9A E821B3F4FF
call 00403FC0
====>取使用者名稱位數。
:004B8C9F
8BF0 mov
esi, eax
====>?EAX=8,入ESI
:004B8CA1
8B45F4 mov eax,
dword ptr [ebp-0C]
:004B8CA4 E817B3F4FF
call 00403FC0
:004B8CA9 8BD8
mov ebx, eax
:004B8CAB 85DB
test ebx, ebx
====>?EBX=8,使用者名稱位數
:004B8CAD 0F8EA0000000
jle 004B8D53
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B8D4D(C)
註冊碼演算法的迴圈開始了!要細心看了!作者真不怕麻煩,我都快追暈了。^-^
:004B8CB3
8BC3 mov
eax, ebx
====>EAX是迴圈的次數,依次遞減。
:004B8CB5
2501000080 and eax, 80000001
====>保留eax的最後一位,如果eax是奇數那他的最後一位就是1那麼在下面
:004B8CBA
7905 jns
004B8CC1
:004B8CBC 48
dec eax
:004B8CBD 83C8FE
or eax, FFFFFFFE
:004B8CC0 40
inc eax
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B8CBA(C)
|
:004B8CC1
85C0 test
eax, eax
:004B8CC3 752E
jne 004B8CF3
====>是否是判斷奇、偶數的?分別跳轉?
:004B8CC5
8B45F4 mov eax,
dword ptr [ebp-0C]
====>D EAX=flysky12
:004B8CC8
0FB64418FF movzx eax, byte ptr
[eax+ebx-01]
EBX=8 取第8位 ====>1、?EAX=32 即2的HEX值
EBX=6 取第6位
====>3、?EAX=79 即y的HEX值
EBX=4 取第4位 ====>5、?EAX=73 即s的HEX值
EBX=2 取第2位 ====>7、?EAX=6C
即l的HEX值
:004B8CCD
8BD6 mov
edx, esi
====>8入EDX
:004B8CCF 2BD3
sub edx,
ebx
====>1、EDX=8-8=0
====>3、EDX=8-6=2
====>5、EDX=8-4=4
====>7、EDX=8-2=6
:004B8CD1
8B4DF4 mov ecx,
dword ptr [ebp-0C]
====>D ECX=flysky12
:004B8CD4
0FB65411FF movzx edx, byte ptr
[ecx+edx-01]
從第0位取字元
====>1、EDX=0, 即從第0位取字元
從第2位取字元 ====>3、EDX=6C,即l的HEX值
從第4位取字元 ====>5、EDX=73,即s的HEX值
從第6位取字元 ====>7、EAX=79,即y的HEX值
:004B8CD9
F7EA imul
edx
====>1、EAX=32*0=0
====>3、EAX=79*6C=330C
====>5、EAX=73*73=33A9
====>7、EAX=6C*79=330C
:004B8CDB
83E003 and eax,
00000003
====>1、EAX=0&3=0(分別進行“與”運算)
====>3、EAX=330C&3=0
====>5、EAX=33A9&3=1
====>7、EAX=330C&3=0
:004B8CDE
8D55E8 lea edx,
dword ptr [ebp-18]
:004B8CE1 E87E04F5FF
call 00409164
====>此CALL把以上所得值轉化為十進位制值
:004B8CE6
8B55E8 mov edx,
dword ptr [ebp-18]
====>結果入EDX
====>1、EDX=0
********
====>3、EDX=0
********
====>5、EDX=1
********
====>7、EDX=0
********
:004B8CE9
8B45EC mov eax,
dword ptr [ebp-14]
:004B8CEC 8B08
mov ecx, dword ptr [eax]
:004B8CEE FF5134
call [ecx+34]
:004B8CF1 EB57 jmp 004B8D4A
* Referenced
by a (U)nconditional or (C)onditional Jump at Address:
|:004B8CC3(C)
|
:004B8CF3
8BC3 mov
eax, ebx
====>2、7入EAX
====>4、5入EAX
====>6、3入EAX
====>8、1入EAX
:004B8CF5
B903000000 mov ecx, 00000003
====>3入ECX
:004B8CFA 99
cdq
:004B8CFB
F7F9 idiv
ecx
====>2、EAX=7/3=2餘1
====>4、EAX=5/3=1餘2
====>6、EAX=3/3=1餘0
====>8、EAX=1/3
:004B8CFD
85D2 test
edx, edx
:004B8CFF 752B
jne 004B8D2C
====>EDX=0則不跳!即不可整除就跳!
:004B8D01
8B45F4 mov eax,
dword ptr [ebp-0C]
====>EAX=flysky12
:004B8D04
0FB64418FF movzx eax, byte ptr
[eax+ebx-01]
EBX=3
取第3位 ====>6、EAX=79,即y的HEX值
:004B8D09
8BD6 mov
edx, esi
:004B8D0B 2BD3
sub edx, ebx
====>6、EDX=8-3=5
:004B8D0D
8B4DF4 mov ecx,
dword ptr [ebp-0C]
====>D ECX=flysky12
:004B8D10
0FB65411FF movzx edx, byte ptr
[ecx+edx-01]
EDX=5
取第5位 ====>6、D EDX=6B,即k的HEX值
:004B8D15 03C2
add eax, edx
====>6、EAX=79+6B=E4
:004B8D17
8D55E4 lea edx,
dword ptr [ebp-1C]
:004B8D1A E84504F5FF
call 00409164
====>此CALL把以上所得值轉化為十進位制值
:004B8D1F
8B55E4 mov edx,
dword ptr [ebp-1C]
====>6、EDX=228,即E4的Decimal值
********
:004B8D22
8B45EC mov eax,
dword ptr [ebp-14]
:004B8D25 8B08
mov ecx, dword ptr [eax]
:004B8D27 FF5134
call [ecx+34]
:004B8D2A
EB1E jmp
004B8D4A
* Referenced
by a (U)nconditional or (C)onditional Jump at Address:
|:004B8CFF(C)
|
:004B8D2C
8B45F4 mov eax,
dword ptr [ebp-0C]
====>EAX=flysky12
:004B8D2F
0FB64418FF movzx eax, byte ptr
[eax+ebx-01]
EBX=7 ====>2、EAX=31,即第7位的字元
EBX=5
====>4、EAX=6B,即第5位的字元
EBX=1 ====>8、EAX=66,即第1位的字元
:004B8D34
83C005 add eax,
00000005
====>2、EAX=31+5=36
====>4、EAX=6B+5=70
====>8、EAX=66+5=6B
:004B8D37
8D55E0 lea edx,
dword ptr [ebp-20]
:004B8D3A E82504F5FF
call 00409164
====>此CALL把以上所得值轉化為十進位制值
:004B8D3F
8B55E0 mov edx,
dword ptr [ebp-20]
====>2、EDX= 54,即36的Decimal值
********
====>4、EDX=112,即70的Decimal值
********
====>8、EDX=107,即6B的Decimal值
********
:004B8D42
8B45EC mov eax,
dword ptr [ebp-14]
:004B8D45 8B08
mov ecx, dword ptr [eax]
:004B8D47 FF5134
call [ecx+34]
*
Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004B8CF1(U),
:004B8D2A(U)
|
:004B8D4A 4B
dec ebx
====>EBX依次減一
====>1、EBX=7
====>2、EBX=6
…… ……
:004B8D4B
85DB test
ebx, ebx
:004B8D4D 0F8F60FFFFFF jg
004B8CB3
====>沒取完?繼續迴圈!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B8CAD(C)
|
:004B8D53
8B45EC mov eax,
dword ptr [ebp-14]
:004B8D56 8B10
mov edx, dword ptr [eax]
:004B8D58 FF5214
call [edx+14]
:004B8D5B
8BF0 mov
esi, eax
:004B8D5D 4E
dec esi
:004B8D5E 85F6
test esi, esi
:004B8D60 7C22
jl 004B8D84
:004B8D62
46 inc
esi
:004B8D63 33DB
xor ebx, ebx
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B8D82(C)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
下面迴圈程式碼的作用是把上面8次迴圈所得的結果,按照8、7、6、5、4、3、2、1的倒序方式連線起來,所得到的最後結果存入[EBP-10]處!這就是我們們“千辛萬苦”追蹤的真碼!
:004B8D65
8D4DDC lea ecx,
dword ptr [ebp-24]
:004B8D68 8BD3
mov edx, ebx
:004B8D6A 8B45EC
mov eax, dword ptr [ebp-14]
:004B8D6D
8B38 mov
edi, dword ptr [eax]
:004B8D6F FF570C
call [edi+0C]
:004B8D72 8B55DC
mov edx, dword ptr [ebp-24]
:004B8D75 8D45F0
lea eax, dword ptr
[ebp-10]
:004B8D78 8B4DF0
mov ecx, dword ptr [ebp-10]
:004B8D7B E88CB2F4FF
call 0040400C
:004B8D80 43
inc ebx
:004B8D81
4E dec
esi
:004B8D82 75E1
jne 004B8D65
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B8D60(C)
|
:004B8D84
33C0 xor
eax, eax
:004B8D86 5A
pop edx
:004B8D87 59
pop ecx
:004B8D88 59
pop ecx
:004B8D89
648910 mov dword
ptr fs:[eax], edx
:004B8D8C 68A18D4B00
push 004B8DA1
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B8D9F(U)
|
:004B8D91
8B45EC mov eax,
dword ptr [ebp-14]
:004B8D94 E85BA2F4FF
call 00402FF4
:004B8D99 C3
ret
―――――――――――――――――――――――――――――
4、F8進入比較CALL:004B8F01 call 004040D0
:004040D0
53 push
ebx
:004040D1 56
push esi
:004040D2 57
push edi
:004040D3 89C6
mov esi, eax
:004040D5 89D7
mov edi,
edx
:004040D7 39D0
cmp eax, edx
====>D
EAX=真碼!!
====>D EDX=試煉碼
:004040D9 0F848F000000 je 0040416E
―――――――――――――――――――――――――――――
【KeyMake之記憶體序號產生器】:
中斷地址:4B8F01
中斷次數:1
第一位元組:E8
指令長度:5
中斷地址:4040D7
中斷次數:1
第一位元組:39
指令長度:2
記憶體方式:EAX
―――――――――――――――――――――――――――――
【註冊資訊儲存】:
HKEY_LOCAL_MACHINE\Software\zigsoft\rw1.5\setup]
"RWUser"="flysky12"
"RWCode"="107022811120540"
―――――――――――――――――――――――――――――
【整
理】:
使用者名稱:flysky12
註冊碼:107022811120540
―――――――――――――――――――――――――――――
Cracked By 巢水工作坊――fly【OCN】
2003-2-7 23:00
相關文章
- OFD專用電子發票及PDF普通電子發票-批量解析V1.52020-12-03
- 1111111111111112024-04-11
- 1111111112024-07-10
- [20211111]18c index (re)build lock or pin object.txt2021-11-12IndexUIObject
- 【Android Build】高效批量打渠道包2019-04-15AndroidUI
- 1111112024-08-23
- 111112024-08-31
- 第十四節:1111112024-10-06
- 11112024-10-03
- 【位元熊故事匯】X Microsoft Build 2022——微軟專家+MVP,技術亮點全解析2022-06-03ROSUI微軟MVP
- Airlock 現已更名為 Sanctum2020-03-21AI
- Redis Labs更名為Redis2021-08-12Redis
- vue專案打包:npm run build 程式卡死2020-11-18VueNPMUI
- CSS 專家提示2018-05-19CSS
- MySQL專家組2010-04-23MySql
- NIPS 官方公告「更名」結果......2018-10-24
- [20211111]奇怪的ashtop輸出.txt2021-11-12
- lst11112024-07-31
- DMSP開發者管理服務系統 V1.52020-11-28
- vue專案部署(npm run build二級域名)2018-03-13VueNPMUI
- [20211111]我看華為監控程式.txt2021-11-11
- 技術專家or專案專家-專案管理MSN群線上討論(2009.6.23)2009-06-23專案管理
- 理財AI勇闖「無人區」:理解專家、成為專家2024-07-08AI
- idea啟動專案時一直build2020-10-03IdeaUI
- Motorola將更名為Moto ,Logo將保留2016-02-24Go
- SQL專家雲產品2023-04-12SQL
- IT專家網 資料庫2007-06-01資料庫
- ORACLE 索引專家:Richard Foote2009-05-30Oracle索引
- Oracle專家調優秘密2007-10-08Oracle
- [20211111]19c latch free等待時間分析.txt2021-11-11
- 擴充套件第三方DropDownMenu v1.52017-12-13套件
- Jeasyframe 開源框架 穩定版 V1.5 釋出2013-08-08框架
- 11112222024-11-02
- Flutter 專案自增 build 號,不做重複勞動2021-05-24FlutterUI
- 巨人網路《太空行動》正式更名《太空殺》2023-09-28
- 如何為Windows server 2003域更名2017-11-13WindowsServer
- 微軟為Nokia Camera更名為Lumia Camera2014-07-16微軟
- Oracle系統中表外來鍵的更名(轉)2007-08-13Oracle