簡單演算法――窮和麻將 V2.08!
下載地址: http://www.skycn.com/soft/9092.html
軟體大小: 1248 KB
軟體語言: 簡體中文
軟體類別: 國產軟體 / 共享版 / 棋牌遊戲
應用平臺:
Win9x/NT/2000/XP
加入時間: 2003-02-12 10:53:38
下載次數: 14895
推薦等級:
***
開 發 商: http://bmzhao.wx-e.com/
【軟體簡介】:窮和麻將廣泛流傳於我國北方地區。和牌規則是開門、不缺門、有麼九、有橫、有順。
【軟體限制】:試用期
【作者宣告】:初學Crack,只是感興趣,沒有其它目的。失誤之處敬請諸位大俠賜教!
【破解工具】:TRW2000娃娃修改版、FI2.5、W32Dasm8.93黃金版
―――――――――――――――――――――――――――――
【過
程】:
呵呵,血草兄前幾日給我的“作業”。誰知DOWN下來後卻無法執行,鬱悶。今天看看其說明,明白了這個傢伙嫌我的機子檔次太低,故而罷工。呵呵,去找一朋友,在他的P4上搞定了它。雖然朋友心疼愛機,我卻裝作沒看見。^-^
哎,已經凌晨了,太困了。
mj.exe無殼。VC++
6.0編寫。反彙編,很容易就找到核心。
機器碼:604838662
試煉碼:13572468
―――――――――――――――――――――――――――――
*
Reference To: KERNEL32.GetVolumeInformationA, Ord:0177h
====>呵呵,取我的硬碟序列號!
:0040873C
FF15F4514200 Call dword ptr [004251F4]
:00408742
8B4C2410 mov ecx, dword
ptr [esp+10]
====>240D1B06 即604838662入ECX
:00408746
85C9 test
ecx, ecx
:00408748 742F
je 00408779
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00408777(C)
|
:0040874A
8BC1 mov
eax, ecx
====>1、240D1B06
====>2、0162F731
====>3、000DA70B
====>4、0000866C
====>5、0000052B
====>6、00000032
====>7、00000001
:0040874C
33D2 xor
edx, edx
:0040874E BD1A000000 mov
ebp, 0000001A
====>1A 入 EBP
:00408753
F7F5 div
ebp
====>EAX分別除以1A,直至不夠除。商入EAX,餘數入EDX
====>1、240D1B06/1A=0162F731 餘C
====>2、0162F731/1A=000DA70B 餘13
====>3、000DA70B/1A=0000866C 餘13
====>4、0000866C/1A=0000052B 餘E
====>5、0000052B/1A=00000032 餘17
====>6、00000032/1A=00000001
餘18
====>7、00000001/1A=00000000
餘01
:00408755 0FBE07
movsx eax, byte
ptr [edi]
====>依次取試煉碼的HEX值 EDI=13572468
====>1、31 入 EAX
…… ……省略…… ……
:00408758
8B149568C14200 mov edx, dword ptr [4*edx+0042C168]
====>依次從[4*edx+0042C168]處取值!
====>1、[4*C+0042C168]=0042C198 值為18
====>2、[4*13+0042C168]=0042C1B4 值為06
====>3、[4*13+0042C168]=0042C1B4 值為06
====>4、[4*E+0042C168]=0042C1A0 值為08
====>5、[4*17+0042C168]=0042C1C4 值為0C
====>6、[4*18+0042C168]=0042C1C8 值為16
====>7、[4*01+0042C168]=0042C16C 值為05
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
附:0042C168-0042C1C8
記憶體處的值!
0042C168 10 00 00 00 05 00 00 00 02 00 00 00 17 00 00 00
0042C178 00 00 00 00 04 00 00 00 0E 00 00 00 19 00 00 00
0042C188 09 00 00 00 03 00 00 00 0F 00 00 00 0B 00 00 00
0042C198 18 00 00 00 0A 00 00 00 08 00 00 00 01 00 00 00
0042C1A8 0D 00 00 00 14 00 00 00 11 00 00 00 06 00 00 00
0042C1B8
15 00 00 00 13 00 00 00 07 00 00 00 0C 00 00 00
0042C1C8 16
00 00 00 12 00 00 00 BA EC D6 D0 00 00 00 00
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
:0040875F
83C241 add edx,
00000041
====>1、18+41=59
====>2、06+41=47
====>3、06+41=47
====>4、08+41=49
====>5、0C+41=4D
====>6、16+41=57
====>7、05+41=46
:00408762
47 inc
edi
:00408763 3BD0
cmp edx, eax
====>依次與試煉碼的HEX值比較!
呵呵,把上面得到的59、47、47、49、4D、57、46分別轉化為其所對應的字元就是我的註冊碼了!
59、47、47、49、4D、57、46====>YGGIMWF
:00408765
7560 jne
004087C7
====>跳則OVER! R FL Z 改變跳轉讓其繼續比較!
:00408767
B84FECC44E mov eax, 4EC4EC4F
:0040876C
F7E1 mul
ecx
:0040876E C1EA03
shr edx, 03
:00408771 8BCA
mov ecx, edx
:00408773 894C2410
mov dword ptr [esp+10], ecx
:00408777 75D1
jne 0040874A
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00408748(C)
|
:00408779
E83FA70100 call 00422EBD
:0040877E
8B0B mov
ecx, dword ptr [ebx]
:00408780 8B15C4FB4200
mov edx, dword ptr [0042FBC4]
:00408786 8B4004
mov eax, dword ptr [eax+04]
:00408789 51
push
ecx
:0040878A 8B0DC8FB4200 mov ecx,
dword ptr [0042FBC8]
:00408790 52
push edx
:00408791 51
push ecx
:00408792 8BC8
mov ecx,
eax
:00408794 E8B3950100 call
00421D4C
:00408799 6A00
push 00000000
*
Possible Reference to Dialog:
|
:0040879B
6830C64200 push 0042C630
*
Possible StringData Ref from Data Obj ->"恭喜你,註冊成功!"
====>勝利女神!
:004087A0
681CC64200 push 0042C61C
…… …… 省 略 …… ……
*
Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00408765(C)
|
:004087C7
6A00 push
00000000
* Possible
Reference to Dialog:
|
:004087C9
6810C64200 push 0042C610
*
Possible StringData Ref from Data Obj ->"註冊碼不對!"
====>失敗小鬼!
:004087CE
6804C64200 push 0042C604
--------------------------------------------------------
【註冊資訊儲存】:
REGEDIT4
[HKEY_CURRENT_USER\Software\Lzly\MJ\MJ]
"CODE"="YGGIMWF"
―――――――――――――――――――――――――――――
【整
理】:
機器碼:604838662
註冊碼:YGGIMWF
呵呵,把你的硬碟序列號改為240D1B06,你就能用這個註冊碼了。^-^
―――――――――――――――――――――――――――――
Cracked By 巢水工作坊――fly【OCN】
2:23 03-2-26
相關文章
- node.js——麻將演算法(七)簡易版麻將出牌AI2.02021-09-09Node.js演算法AI
- 麻將胡牌演算法2018-04-05演算法
- 麻將胡牌演算法研究2017-03-26演算法
- 求廈門麻將的胡牌演算法,2019-05-11演算法
- 簡單演算法2024-08-09演算法
- Kyodai Mahjongg 19.00(四川省麻將)--演算法分析2015-11-15AI演算法
- 簡單理解slot演算法和shadow DOM2019-02-25演算法
- 窮舉密碼演算法 (轉)2007-12-03密碼演算法
- 簡單排序演算法2020-11-27排序演算法
- LRU演算法簡單例子2013-11-26演算法單例
- Kdevelop的簡單使用和簡單除錯2019-01-26dev除錯
- 簡單理解Paxos演算法(譯)2019-03-04演算法
- 15道簡單演算法題2014-06-08演算法
- Teleport
pro 演算法簡單分析2004-07-15演算法
- №窮舉密碼演算法指要(原始碼) (轉)2007-12-11密碼演算法原始碼
- 【演算法框架套路】回溯演算法(暴力窮舉的藝術)2021-08-24演算法框架
- Android螢幕適配很麻煩嗎?不!太簡單了。。。(持續更新)2018-06-25Android
- 對CAS演算法的簡單理解2018-03-18演算法
- 十道簡單演算法題2018-03-30演算法
- 簡單的幾個排序演算法2018-04-10排序演算法
- RSA加密演算法的簡單案例2016-08-16加密演算法
- 演算法學習之簡單排序2016-04-23演算法排序
- 如何簡單解釋 MapReduce 演算法2014-11-06演算法
- 簡單的java遞迴演算法2011-02-15Java遞迴演算法
- 排序演算法——簡單選擇排序2013-05-06排序演算法
- A*演算法的簡單實現薦2012-02-28演算法
- PCMark04的簡單演算法2015-11-15演算法
- 簡單介紹Python迷宮生成和迷宮破解演算法2020-04-24Python演算法
- 演算法學習之路|POJ-2479最大子串和(簡單dp)2018-02-23演算法
- 演算法學習---歸併演算法簡單記錄2020-10-29演算法
- 演算法(3)簡單四則運算2019-04-08演算法
- 簡單演算法――熱鍵大師1.132003-03-06演算法
- 簡單演算法――The All-Seeing Eye2015-11-15演算法
- 簡單演算法之貪吃豆豆龍2015-11-15演算法
- InnoSetup簡單教程一,安裝使用和簡單測試2019-05-11
- 青少兒發育分析和身高預測註冊演算法(簡單)2015-11-15演算法
- 將物件解析為JSON資料和將JSON資料解析為物件的簡單例項2021-09-09物件JSON單例
- 將textarea文字框設定為只讀和不可用簡單介紹2017-03-09