Messenger Helper 2.10(Build 30124)
簡單演算法――Messenger
Helper 2.10(Build 30124)
下載頁面:http://www.helperstudio.com/Software/Messenger/gb/Download.asp
軟體大小:630K
【軟體簡介】:Messenger Helper 是基於MSN/Windows Messenger 的工具。 它能自動記錄聊天資訊,並能完美的再現聊天內容,如表情符號等。同時它還有更多豐富的功能。
【軟體限制】:免費註冊
【作者宣告】:初學Crack,只是感興趣,沒有其它目的。失誤之處敬請諸位大俠賜教!
【破解工具】:TRW2000娃娃修改版、Ollydbg1.09、FI2.5、W32Dasm8.93黃金版
―――――――――――――――――――――――――――――――――
【過 程】:
作者
風無痕/紅山 先生的《開發歷程隨筆》可能是許多軟體作者的共同體會,開發一個軟體需要耗費作者無數的心血,的確不容易。因為這個軟體還是免費提供註冊的,所以我簡單寫了寫演算法過程,希望作者能夠諒解。
MSNBrowser.exe無殼。Visual C++ 6.0編寫。
E Mail:fly@hotmail.com(因為我不用MSN,所以隨便填個帳號^-^^-^)
試煉碼:13572468
(需要8位數字)
用TRW下BPX
HMEMCPY斷點,PMODULE,再過幾個RET,很容易就到達核心了。
―――――――――――――――――――――――――――――――――
:00403631
E8C62E0300 call 004364FC
:00403636
8D7D60 lea edi,
dword ptr [ebp+60]
:00403639 8BCF
mov ecx, edi
:0040363B E8BC2E0300
call 004364FC
:00403640 8B07
mov eax, dword ptr [edi]
====>EAX=13572468
:00403642
8B0E mov
ecx, dword ptr [esi]
====>ECX=fly@hotmail.com
:00403644
8B40F8 mov eax,
dword ptr [eax-08]
====>EAX=8 取試煉碼位數
:00403647
8B59F8 mov ebx,
dword ptr [ecx-08]
====>EBX=F 取E
Mail位數
:0040364A 50
push
eax
:0040364B 8BCF
mov ecx, edi
:0040364D E850A60300
call 0043DCA2
:00403652 50
push eax
:00403653 53
push ebx
:00403654
8BCE mov
ecx, esi
:00403656 E847A60300 call
0043DCA2
:0040365B 50
push eax
:0040365C E8AF090000
call 00404010
====>關鍵CALL!進入!
:00403661
83C408 add esp,
00000008
:00403664 85C0
test eax, eax
====>EAX是否為0?
:00403666
7421 je 00403689
====>不跳則OVER!
*
Possible Reference to String Resource ID=00255: "zo
"
|
:00403668 6AFF
push FFFFFFFF
:0040366A 6A00
push 00000000
*
Possible Reference to String Resource ID=00209: "e?魍e"
|
:0040366C 68D1000000
push 000000D1
:00403671 E8EC1F0400
call 00445662
====>BAD
BOY!
:00403676 5F
pop edi
:00403677
5E pop
esi
:00403678 5D
pop ebp
:00403679 5B
pop ebx
:0040367A 8B4C2408
mov ecx, dword ptr [esp+08]
:0040367E
64890D00000000 mov dword ptr fs:[00000000],
ecx
:00403685 83C414
add esp, 00000014
:00403688 C3
ret
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00403666(C)
|
:00403689
E8F2130500 call 00454A80
:0040368E
8B4004 mov eax,
dword ptr [eax+04]
:00403691 8D4C2410
lea ecx, dword ptr [esp+10]
:00403695 8B908C000000
mov edx, dword ptr [eax+0000008C]
:0040369B 52
push edx
:0040369C
E83FA20300 call 0043D8E0
:004036A1
33DB xor
ebx, ebx
:004036A3 6A5C
push 0000005C
:004036A5 8D4C2414
lea ecx, dword ptr [esp+14]
:004036A9 895C2424
mov dword ptr [esp+24], ebx
:004036AD
E8462A0300 call 004360F8
:004036B2
40 inc
eax
:004036B3 8D4C2410 lea
ecx, dword ptr [esp+10]
:004036B7 50
push eax
:004036B8 8D442418
lea eax, dword ptr [esp+18]
:004036BC
50 push
eax
:004036BD E8BE290300 call
00436080
:004036C2 50
push eax
:004036C3 8D4C2414
lea ecx, dword ptr [esp+14]
:004036C7 C644242401
mov [esp+24], 01
:004036CC
E8DAA20300 call 0043D9AB
:004036D1
8D4C2414 lea ecx, dword
ptr [esp+14]
:004036D5 885C2420
mov byte ptr [esp+20], bl
:004036D9 E894A10300
call 0043D872
*
Possible StringData Ref from Data Obj ->"AccReg.dat"
====>註冊資訊儲存
:004036DE
6840B24700 push 0047B240
:004036E3
8D4C2414 lea ecx, dword
ptr [esp+14]
:004036E7 E862A50300
call 0043DC4E
:004036EC 8B542410
mov edx, dword ptr [esp+10]
:004036F0 8B07
mov eax, dword ptr [edi]
:004036F2
8B0E mov
ecx, dword ptr [esi]
:004036F4 52
push edx
:004036F5 50
push eax
:004036F6 51
push
ecx
* Possible StringData Ref from Data Obj ->"RegData"
:004036F7 6838B24700 push 0047B238
*
Reference To: KERNEL32.WritePrivateProfileStringA, Ord:02E5h
|
:004036FC FF1500344600
Call dword ptr [00463400]
*
Possible Reference to String Resource ID=00255: "zo
"
|
:00403702 6AFF
push FFFFFFFF
:00403704 53
push ebx
*
Possible Reference to String Resource ID=00210: ",黷翔??彗龕v??"
|
:00403705 68D2000000
push 000000D2
:0040370A E8531F0400
call 00445662
====>呵呵,勝利女神!
―――――――――――――――――――――――――――――――――
進入關鍵CALL:40365C
call 00404010
*
Referenced by a CALL at Address:
|:0040365C
|
:00404010 83EC0C
sub esp, 0000000C
:00404013
53 push
ebx
* Reference To:
KERNEL32.lstrlenA, Ord:0308h
|
:00404014
8B1D10344600 mov ebx, dword ptr [00463410]
:0040401A
57 push
edi
:0040401B 8B7C241C mov
edi, dword ptr [esp+1C]
:0040401F 57
push edi
:00404020 FFD3
call ebx
:00404022 83F808
cmp eax, 00000008
====>註冊號是否8位?
:00404025
740B je 00404032
====>不跳則OVER
:00404027 5F pop edi
* Possible Reference
to String Resource ID=00135: "U;p:"
|
:00404028 B887000000 mov
eax, 00000087
:0040402D 5B
pop ebx
:0040402E 83C40C
add esp, 0000000C
:00404031 C3
ret
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00404025(C)
|
:00404032
55 push
ebp
:00404033 56
push esi
:00404034 8B742420
mov esi, dword ptr [esp+20]
:00404038 33ED
xor ebp, ebp
:0040403A
56 push
esi
:0040403B FFD3
call ebx
:0040403D 33C9
xor ecx, ecx
:0040403F 85C0
test eax, eax
:00404041 760B
jbe 0040404E
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040404C(C)
|
:00404043
0FBE1431 movsx edx, byte
ptr [ecx+esi]
一、 ====>依次取E Mail的HEX值
1、
====>EDX=66
2、 ====>EDX=6C
3、 ====>EDX=79
…… …… 省 略 …… ……
15、
====>EDX=6D
:00404047
03EA add
ebp, edx
====>累加!
1、
====>EBP=66 + 00=66
2、 ====>EBP=66
+ 6C=D2
3、 ====>EBP=D2 + 79=14B
……
…… 省 略 …… ……
15、 ====>EBP=579 + 6D=5E6
:00404049
41 inc
ecx
:0040404A 3BC8
cmp ecx, eax
:0040404C 72F5
jb 00404043
====>迴圈E Mail位數次 15次
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00404041(C)
|
:0040404E
0FBE7707 movsx esi, byte
ptr [edi+07]
二、 ====>ESI=38 取試煉碼第8位的HEX值
:00404052
0FBE4701 movsx eax, byte
ptr [edi+01]
====>EAX=33 取試煉碼第2位的HEX值
:00404056
2BF0 sub
esi, eax
====>ESI=38 - 33=5
:00404058
B800000000 mov eax, 00000000
:0040405D
7414 je 00404073
:0040405F
8A0F mov
cl, byte ptr [edi]
三、 ====>CL=31 取試煉碼第1位的HEX值
* Referenced by a (U)nconditional
or (C)onditional Jump at Address:
|:00404071(C)
|
:00404061 8A540702
mov dl, byte ptr [edi+eax+02]
1、 ====>DL=35 取試煉碼第3位的HEX值
2、
====>DL=37 取試煉碼第4位的HEX值
3、 ====>DL=32
取試煉碼第5位的HEX值
4、 ====>DL=34 取試煉碼第6位的HEX值
5、 ====>DL=36 取試煉碼第7位的HEX值
:00404065
2AD1 sub
dl, cl
1、 ====>DL=35 - 31=4
2、
====>DL=37 - 31=6
3、 ====>DL=32 - 31=1
4、 ====>DL=34 - 31=3
5、 ====>DL=36
- 31=5
:00404067 80C230
add dl, 30
1、 ====>DL=4 + 30=34
2、 ====>DL=6
+ 30=36
3、 ====>DL=1 + 30=31
4、
====>DL=3 + 30=33
5、 ====>DL=5 + 30=35
:0040406A
88540410 mov byte ptr [esp+eax+10],
dl
====>DL 入 [esp+eax+10]處
:0040406E
40 inc
eax
====>EAX 依次增1
:0040406F
3BC6 cmp
eax, esi
====>ESI=5
:00404071
72EE jb 00404061
====>迴圈 5 次
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040405D(C)
|
:00404073
C644041000 mov [esp+eax+10], 00
:00404078
8D442410 lea eax, dword
ptr [esp+10]
====>EAX=46135 (上面運算的結果)
:0040407C
50 push
eax
:0040407D E8372D0200 call
00426DB9
====>將46135轉換成16進位制值 EAX=46135(D)=B437(H)
:00404082
83C404 add esp,
00000004
:00404085 2BC5
sub eax, ebp
四、 ====>EAX=B437-5E6=AE51
實際是比較上面運算的結果與fly@hotmail.com帳號HEX值累加的結果是否相等?
:00404087
5E pop
esi
:00404088 5D
pop ebp
:00404089 5F
pop edi
:0040408A 5B
pop ebx
:0040408B 83C40C
add esp, 0000000C
:0040408E
C3 ret
―――――――――――――――――――――――――――――――――
【算
法 總 結】:
一、將fly@hotmail.com的HEX值累加結果為5E6(H)=1510(D)
對試煉碼13572468運算得出B437(H)=46135(D)
如果這兩者相等則OK
二、第二部分運算取試煉碼的第8位-第2位=5,5是第三部分迴圈的次數。
因為我要得到的結果是5E6(H)=1510(D),所以只要迴圈4次,因此改第8位8為7。
37-33=4,這樣第三部分運算就迴圈4次了。
三、看看第三部分的運算:
:0040405F
8A0F mov
cl, byte ptr [edi]
三、 ====>CL=31 取試煉碼第1位的HEX值
* Referenced by a (U)nconditional
or (C)onditional Jump at Address:
|:00404071(C)
|
:00404061 8A540702
mov dl, byte ptr [edi+eax+02]
1、 ====>DL=35 取試煉碼第3位的HEX值
2、
====>DL=37 取試煉碼第4位的HEX值
3、 ====>DL=32
取試煉碼第5位的HEX值
4、 ====>DL=34 取試煉碼第6位的HEX值
5、 ====>DL=36 取試煉碼第7位的HEX值
:00404065
2AD1 sub
dl, cl
1、 ====>DL=35 - 31=4
2、
====>DL=37 - 31=6
3、 ====>DL=32 - 31=1
4、 ====>DL=34 - 31=3
5、 ====>DL=36
- 31=5
―――――――――――――――――
我的簡單求逆:(結果為1510)
1、 ====>DL=1=32
- 31 所以:註冊號第3位是2
2、 ====>DL=5=36 - 31 所以:註冊號第4位是6
3、 ====>DL=1=32 - 31 所以:註冊號第5位是2
4、
====>DL=0=31 - 31 所以:註冊號第6位是1
因為只迴圈4次,所以我的註冊號第7位可以是任意數字。
所以:我的註冊號=13262167
―――――――――――――――――――――――――――――――――
【註冊資訊儲存】:
同資料夾下的AccReg.dat檔案中:
[RegData]
fly@hotmail.com=13262167
―――――――――――――――――――――――――――――――――
【整 理】:
E
Mail:fly@hotmail.com
註冊號:13262167
―――――――――――――――――――――――――――――――――
Cracked By
巢水工作坊――fly【OCN】
16:28 03-3-23
相關文章
- 2.102024-10-28
- flutter 一個簡單的Route Helper/Navigator Helper2018-09-24Flutter
- 2.4-2.102024-03-10
- 例題2.102024-10-22
- Xpath helper外掛2019-05-20
- Scala 2.10 釋出2013-01-06
- Android Messenger原理2019-04-18AndroidMessenger
- MSN Messenger 7.0.06042005-02-15Messenger
- 【譯】Exception Helper – Rethrown Exceptions2020-07-08Exception
- [譯] 如何使用 Rails Helper2020-07-01AI
- NPOI使用教程附Helper2018-11-29
- laravel-ide-helper2022-03-04LaravelIDE
- Rails中的Helper方法2016-04-14AI
- Discuz! X2.5 /source/class/helper/helper_seo.php Remote Code Execution Vul2015-05-24PHPREM
- 2.10 克隆資料庫2020-03-14資料庫
- Flutter 2.10 更新詳解2022-02-06Flutter
- 2.10 java SDK的使用2018-12-10Java
- sicp每日一題[2.10]2024-09-15每日一題
- Lumen 使用 laravel-ide-helper2021-06-22LaravelIDE
- 安裝 Laravel-ide-helper2021-02-04LaravelIDE
- Presentation Helper for Mac(桌面演示工具)1.82021-11-29Mac
- Blocks Programming Helper ↗ Blocks in System APIs2018-01-12BloCAPI
- Kafka叢集安裝Version2.102018-11-26Kafka
- Flutter 2.10正式版釋出2022-02-07Flutter
- 支援Windows的Flutter 2.10釋出2022-02-15WindowsFlutter
- 微軟將中止MSN Messenger服務2012-11-07微軟Messenger
- Advance Web Solutions---Office Messenger2011-06-14WebMessenger
- 建立Laravel自定義Helper輔助方法2021-03-29Laravel
- Vue 原始碼解讀(11)—— render helper2022-03-08Vue原始碼
- Android 多程式之Messenger的使用2018-08-27AndroidMessenger
- Android多程式之Messenger的使用2018-09-27AndroidMessenger
- Android 程式間通訊 Service、Messenger2017-07-20AndroidMessenger
- [ASP.NET MVC 小牛之路]13 - Helper Method2013-11-19ASP.NETMVC
- Build Cookbook2014-10-22UI
- NDK build2013-04-24UI
- Mvvmcross Plugins - Cirrious.MvvmCross.Plugins.Messenger2014-08-03MVVMROSPluginMessenger
- Enterprise Instant Messenger: Are you the only user?2011-06-14Messenger
- 企業QQ的替代產品Active Messenger2010-01-05Messenger