190617遊戲外掛程式入門(1)

2021-09-24 12:57:39 字數 1487 閱讀 5429

兩個任務

1、修改遊戲中的相關引數的值

2、找到遊戲的關鍵功能函式

下面是相關筆記(以植物大戰殭屍為例)

工具:od、ec、彙編**注入器

第一課尋找陽光值的靜態位址,用來永久的修改遊戲的陽光值

eax=00000064

ebx=00000004

ecx=00000000

edx=0be84080

esi=19a31dc0

edi=16b15870

ebp=0019fa98

esp=00199790

eip=0048982b

指標基址可能是 =19a31dc0

0048981d - test al,al

0048981f - jne 00489933

00489825 - mov eax,[esi+00005560]

0048982b - xor ecx,ecx

0048982d - test eax,eax

找到第一段偏移量是在暫存器esi的基礎上偏移5560

第二步:找到誰呼叫了esi

eax=00452650

ebx=0019fd00

ecx=0284a028

edx=00667ba0

esi=19a31dc0

edi=0284a028

ebp=00000001

esp=0019fc60

eip=00452679

指標基址可能是 =0284a028

0045266a - cmp byte ptr [edi+000004cf],00

00452671 - je 0045269b

00452673 - mov esi,[edi+00000768]

00452679 - test esi,esi

0045267b - je 0045269b

第二段的偏移量是768

然後繼續找下一段,看看是誰呼叫了edi

直到發現靜態的位址

靜態位址是6a9ec0

然後手動新增位址的偏移量,就可以修改陽光值

第二課call 子程式 函式

關鍵call:

程式破解:關鍵判斷call

遊戲外掛程式:關鍵功能call

任務:找陽光掉落的call

eax=006a7be0

ebx=00000000

ecx=0000000c

edx=00000006

esi=006a7be0

edi=00000120

ebp=0be546f0

esp=0019f948

eip=00471b5b

指標基址可能是 =006a7be0

彙編**注入測試:

push 0

push 4

push 3

cpush 000000c0

mov ecx,19b623a8

call 40cb10

190618遊戲外掛程式入門(2)

第3課 hook 鉤子 外掛程式中的體現 掛鉤 實現讀取實時資料 hook方式 位址直接修改 間接修改 找到空白位址區域寫入自己想要執行的過程的資料 原位址的區域跳轉 空白位址跳轉回去 3 直接讀取 今天的主要任務是找出陽光值減少的函式 在執行的這時候一定要執行處陽光減少的步驟,不然不會得出減少的程...

phaser遊戲開發入門1

使用phaser開發十幾款遊戲,感覺這個引擎不錯,給大家分享下。demo位址 phaser這個引擎封裝做的比較好,常用的物理引擎都有封裝,音訊方面也特別給力,開發起來就乙個字 快 學習一款遊戲引擎只需要做的事情有 1 看他的demo演示,看他能做什麼 phaser 能做2d遊戲開發,2 看他的文件和...

遊戲程式設計入門(1) 精靈 ISprite

對於遊戲程式設計而言,我也是個初學者,這個遊戲程式設計入門系列的文章,就當作是我在學習遊戲程式設計的筆記和階段小結吧。我們先從最簡單的 精靈 開始,暫時我們不需要考慮directx或是opengl,不需要考慮3維等等這些複雜情形,直接使用gdi 繪圖功能就可以了。精靈,是構成遊戲中活動體 比如,飛機...