[破解]天草初級筆記

一、彙編1

不過這二者的轉換卻不用計算,每個C,C++程序員都能做到看見二進制數,直接就能轉換爲十六進制數,反之亦然。

十進制DEX

二進制

十六進制HEX

寄存器  

1. 通用寄存器包括了8個16/32位的寄存器:AX/EAX、BX/EBX、CX/ECX、DX/EDX、SP/ESP、BP/EBP、DI/EDI及SI/ESI。其中AX/EAX、BX/EBX、CX/ECX、DX/EDX在一般情況下作爲通用的數據寄存器,用來暫時存放計算過程中所用到的操作數、結果或其他信息。它們還可分爲兩個獨立的8位寄存器使用,命名爲AL、AH、BL、BH、CL、CH、DL和DH。這4個通用數據寄存器除通用功能外,還有如下專門用途:

AX/EAX作爲累加器用,所以它是算術運算的主要寄存器。在乘除指令中指定用來存放操作數。另外,所有的I/O指令都使用AX或AL與外部設備傳送信息。

BX/EBX在計算存儲器地址時,可作爲基址寄存器使用。

CX/ECX常用來保存計數值,如在移位指令、循環指令和串處理指令中用作隱含的計數器。DX在作雙字長運算時,可把DX和AX組合在一起存放一個雙字長數,DX用來存放高16位數據。此外,對某些I/O操作,DX可用來存放I/O的端口地址。

SP/ESP、BP/EBP、SI/ESI、DI/EDI四個16/32位寄存器可以象數據寄存器一樣在運算過程中存放操作數,但它們只能以字(16/32位)爲單位使用。此外,它們更經常的用途是在存儲器尋址時,提供偏移地址。因此,它們可稱爲指針或變址寄存器。

SP/ESP稱爲堆棧指針寄存器,用來指出棧頂的偏移地址。堆棧指針

BP/EBP稱爲基址指針寄存器,在尋址時作爲基地址寄存器使用,但它必須與堆棧段寄存器SS聯用來確定堆棧段中的存儲單元地址。

2、標誌寄存器FLAG

條件碼標誌用來記錄程序中運行結果的狀態信息,它們是根據有關指令的運行結果由(CPU)自動設置的。由於這些狀態信息往往作爲後續條件轉移指令的轉移控制條件,所以稱爲條件碼。

  ① 進位標誌 CF,記錄運算時最高有效位產生的進位值。

  ② 符號標誌 SF,記錄運算結果的符號。結果爲負時置1,否則置0。

  ③ 零標誌  ZF,運算結果爲0時ZF位置1,否則置0。

  ④ 溢出標誌 OF,在運算過程中,如操作數超出了機器可表示數的範圍稱爲溢出。溢出時OF位置1,否則置0。

  ⑤ 輔助進位標誌 AF,記錄運算時第3位(半個字節)產生的進位值。

⑥ 奇偶標誌 PF,用來爲機器中傳送信息時可能產生的代碼出錯情況提供檢驗條件。當結果操作數中1的個數爲偶數時置1,否則置0。

3.浮點寄存器

4.段寄存器

彙編指令的跳轉

Je

Jnz

Jmp

Jpe

二、彙編2

數據傳送指令

MOV

進出棧

Push

Pop

Pushad

Popad

 

五、彙編5

 

六、彙編6

 

七、破解1

1、如何用F12暫停法

2、什麼是回溯

F12暫停 k顯示堆棧調用下段尾斷點

獨步清風 ASCII "4C375C31A1197136E773F04CAFA7A5D0"

進一步思考如何寫註冊機,以及註冊表表項(分析註冊項)

清楚寫註冊機算法

八、破解2

1、如何從系統領空到程序領空

2、peid分析算法,kanal

獨步清風  ASCII "8568FDCDFE891B694C3C0E8D9CDB72D8"

九、脫殼1

如何修改區段 Lordpe→pe編輯器

十、patch1 不脫殼破解

Codefusion

什麼是patch

Hzorinline

十一、破解3

D 地址,跟蹤

培養一定的代碼分析能力

十二、脫殼2

錯誤,pe頭修改c32asm

也是一種反跟蹤的方法。

附加數據的處理方法

Lordpe區段,roffset,rsize

系統函數跟蹤,jmp手動查找IAT

十三、破解4

不脫殼破解,F12暫停,尋找關鍵call,在段首下硬件斷點

到達oep,尋找錯誤字符串。

獨步清風 ASCII "ZCRLw16TU+SLHm3GQCEEaw=="

內存註冊機

十四、破解5

重啓驗證

1、註冊表(bp RegOpenKeyExA)

2、文件(ini、DLL、。。。。)(bp CreateFileA)

Ultra 字符串參考,項目 2

 地址=00401DA9

 反彙編=mov edx,Unpack_.0042F341

 文本字符串=\Software\xm studio\Warlords

 

Encry Str Hex

 

T Reg Ini File

 

Decry Str Hex

 

A3D38D3854E5BE21

FFFFFFFFFFFFFFFF

 

Enabled = False

十五、破解 6

Pdf2doc 爆破和追註冊碼

0018D994  000405EA  UNICODE"S-Win-Core-LocalRegistry-L1-1-0"

F9運行,輸假碼,然後下斷點,點註冊

Bp messageboxa

十六、破解7

內存補丁

註冊補丁,手動patch

十七、破解8

重啓驗證

反調試機制

下斷點bp 注意大小寫 bp openregkeyexa

bp GetPrivateProfileStringA

(ini)

去除限制次數

Dll的破解

Pe explorer

十八、破解9

DeDe

十九、破解10

軟件的註冊機制

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章