冰楓論壇

 找回密碼
 立即註冊
ads_sugarbook
搜索
查看: 8857|回覆: 12

[教學] Pointer 相關應用

  [複製鏈接]

1553

主題

3

好友

3505

積分

論壇元老

Rank: 8Rank: 8

UID
21539
帖子
3012
主題
1553
精華
0
積分
3505
楓幣
1642
威望
3381
存款
0
贊助金額
0
推廣
0
GP
340
閱讀權限
90
在線時間
2484 小時
註冊時間
2013-1-30
最後登入
2024-3-28

Android勳章 2019端午節紀念勳章 積分勳章 發帖達人 懶人勳章 性別(男) 音樂勳章 2019中秋節紀念勳章 神手勳章 私服達人 解說達人 論壇粉絲 論壇支持王 長老勳章 2020年紀念勳章 熱心助人 除蟲大隊 太陽勳章 幼兒勳章 屁孩勳章 2020端午節紀念勳章 2020中秋節紀念勳章 2020聖誕節紀念勳章 在線終極王 版主勳章 管理者 核心勳章 2021年紀念勳章 2021端午節紀念勳章 2021聖誕節紀念勳章 2022端午節紀念勳章 2022中秋節紀念勳章 2023端午節紀念勳章 2023中秋節紀念勳章

發表於 2020-12-23 14:57:42 |顯示全部樓層
本帖最後由 rhg59321 於 2021-5-2 01:25 編輯

數據寫法請往下移動



偶爾會看到有人提問 : "Pointer怎麼使用"
所以發一篇文章來做個簡單說明

1. 打開CE  
1tnt


*(這邊要注意的是, 如果沒有使用過CE的Bypass會跳出 0xD1060104 的檢測)
ce


2. 點左上角的小電腦
2qkq


3. 選楓之谷程序後按開啟
3nan


4. 點選 "手動加入位址"
4aea


5. 出現這個視窗後, 把 "指針" 的選項打勾
5ktk


6. 輸入Pointer, 以 "TwMs v230.3 Pointer 撞擊時間" 來做範例
// TwMs v230.3 Pointer 撞擊時間 (撞擊時間的默認值是1000毫秒=1秒)
Base Address : 042DEB04
Offset : 000033E0
6bzb


7. 輸入完後即可查看Poiinter的值,
7yxy


**第6步驟補充說明, Base放在最下面, Offset依序往上放
例如 : 血魔指針, 這邊用HP的Pointer來示範
// TwMS v230.3 Pointer 血魔指針  
HP: [[04587C3C]+19DC]+0274
61vpv


//======================看下面別看我======================
從上面的教學得知Pointer可以用來讀值
接下來把它延伸到數據的應用上 (使用 TwMS v230.3 Pointer 血魔指針 來寫一個自動補血魔的數據)
裡面會用到按鍵call, 因為需要它來模擬按下按鍵達到喝藥水的效果


// TwMS v230.3 CRC 自動補血魔
[Enable]
// Alloc、Label等等的資料可以到洋蔥大大的部落格去看說明 https://knowlet3389.blogspot.com/2012/05/blog-post_8121.html
Alloc(PressKey,128)
Alloc(CheckHP,256)
Alloc(CheckMP,256)
Alloc(HP,04)
Alloc(MP,04)
Label(CheckHP_Exit)
Label(CheckMP_Exit)

HP:
DD 7D0 // 2000的16進位=7D0, 這個值可隨自己的需求調整
MP:
DD 12C // 300 的16進位=12C, 這個值可隨自己的需求調整

//============================================================================================================
01C5DE23:         // Hook點
jmp CheckHP      // 跳轉到我們申請記體的空間
nop                   // 多補一個nop的原因是Hook點 "01C5DE23" 的這個指令 "mov ecx,[042DEB04]" 使用了6個byte ,而遠程的jmp指令只會使用5個byte, 所以跳轉到申請記憶體空間的時先補一個nop給原程序, 變成: 遠程jmp 5byte加上一個nop指令剛好6個byte, 關閉數據時才不會變成亂碼導致程式崩潰 **(其實這一段我不知道這樣解釋對不對, 錯誤的話請大大告知小弟一聲><)
/*
開啟數據前
01C5DE23 - 8B 0D 04 EB 2D 04 - mov ecx,[042DEB04]
開啟數據後
01C5DE23 - E9 08 21 44 0E    - jmp 100A0000
01C5DEF8 - 90                - nop
*/

CheckHP:                   // 自己申請的空間
pushad                      // pushad指令壓入32位暫存器,使他們按照EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI 的順序出現在堆疊中。
// 以下為HP Pointer HP: [[04587C3C]+19DC]+0274
mov eax,[04587C3C]  // 04587C3C
mov eax,[eax+19DC]  // 19DC
mov eax,[eax+274]    // 0274
cmp eax,[HP]             // 此時eax存放的是角色當前的HP值, 用它跟我們先前設定的[HP]的值來做比較
ja CheckHP_Exit         // 如果eax大於[HP]就不調用按鍵來補血
mov edx,01520000    // 回血的藥水放在哪個按鍵就輸入對應的按鍵碼, 可以參考此篇文章來修改按鍵碼 https://bingfong.com/thread-1754611-1-1.html
call PressKey             // 調用按鍵call

CheckHP_Exit:          // 執行完數據後準備跳回原程序
popad                      // popad指令則是pushad指令的逆操作。popad指令按照與上面相反的順序依次彈出暫存器的值。順序為EDI,ESI,EBP,ESP,EBX,EDX,ECX,EAX .
mov ecx,[042DEB04]  // 還原Hook位址的指令, 原本 "01C5DE23 - mov ecx,[042DEB04]" 因為跳轉到我們申請的記憶體, 被借用成jmp XXXXXXXX, 所以跳回原程序前要先還給它
jmp 01C5DE23+6      // 打開CE看記憶體會發現 01C5DE23 - 8B 0D 04 EB 2D 04 - mov ecx,[042DEB04]" 這個指令使用了6個byte (8B 0D 04 EB 2D 04), 上面還原完Hook位址的指令後要讓原程序繼續執行(否則程式會崩潰), 所以要jmp 01C5DE23+6, 也就是 "01C5DE23" 的下一行
/*
01C5DE23 - 8B 0D 04EB2D04 - mov ecx,[042DEB04]
01C5DE29 - 8B 7D E0       - mov edi,[ebp-20]
*/

//============================================================================================================
01C5DCBE:     // Hook點
jmp CheckMP  // 跳轉到我們申請記體的空間
                     // 這裡不補nop是因為 "01C5DCBE - E8 ED BB 25 01 - call 02EB98B0" 本來就是使用5個byte, 跟遠程jmp使用的byte剛好一樣, 所以不需要補nop
/*
開啟數據前
01C5DCBE - E8 ED BB 25 01 - call 02EB98B0
開啟數據後
01C5DCBE - E9 6D 23 48 0E - jmp 100E0100
*/

CheckMP:                   // 自己申請的空間, 用來寫數據
pushad                      // pushad指令壓入32位暫存器,使他們按照EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI 的順序出現在堆疊中。
// 以下為MP Pointer MP: [[04587C3C]+19E4]+0274
mov eax,[04587C3C]  // 04587C3C
mov eax,[eax+19E4]  // 19E4
mov eax,[eax+274]    // 274
cmp eax,[MP]            // 此時eax存放的是角色當前的MP值, 用它跟我們先前設定的[MP]的值來做比較
ja CheckMP_Exit        // 如果eax大於[MP]就不調用按鍵來補魔
mov edx,01470000    // 回魔的藥水放在哪個按鍵就輸入對應的按鍵碼, 可以參考此篇文章來修改按鍵碼 https://bingfong.com/thread-1754611-1-1.html
call PressKey             // 調用按鍵call

CheckMP_Exit:          // 執行完數據後準備跳回原程序
popad                      // popad指令則是pushad指令的逆操作。popad指令按照與上面相反的順序依次彈出暫存器的值。順序為EDI,ESI,EBP,ESP,EBX,EDX,ECX,EAX .
call 02EB98B0           // 還原Hook位址的指令, 原本 "01C5DCBE - call 02EB98B0"  因為跳轉到我們申請的記憶體, 被借用成jmp XXXXXXXX, 所以跳回原程序前要先還給它
jmp 01C5DCBE+5     // 打開CE看記憶體會發現 "01C5DCBE - E8 ED BB 25 01 - call 02EB98B0" 這個指令使用了5個byte (E8 ED BB 25 01), 上面還原完Hook位址的指令後要讓原程序繼續執行(否則程式會崩潰), 所以要jmp 01C5DCBE+5, 也就是 "01C5DCBE" 的下一行
/*
01C5DCBE - E8 ED BB 25 01 - call 02EB98B0
01C5DCC3 - 8B 4F 04       - mov ecx,[edi+04]
*/

//============================================================================================================
PressKey:                 // 按鍵call, 使用它來達到按下按鍵的效果
mov esi,[042DEB04]
mov ecx,[esi+A4]
push edx
push 00
call 02D7E6D0
ret

[Disable]
01C5DE23:               // Hook點  8B ?? ?? ?? ?? ?? 8B ?? ?? 85 ?? 0F 84 ?? ?? ?? ?? 83 ?? ?? 00 74 ?? 85 ?? 74 ?? E8 ?? ?? ?? ?? 39 ?? ?? 7F
mov ecx,[042DEB04] // Hook點的指令, 也可用Byte來代替 例: DB 8B 0D 04 EB 2D 04

01C5DCBE:               // Hook點  E8 ?? ?? ?? ?? 8B ?? ?? 83 ?? ?? 7C ?? C7 ?? ?? ?? ?? ?? ?? 74 ?? 83 ?? ?? 74 ?? 33 ?? 3B ?? 0F ?? ?? EB
call 02EB98B0           // Hook點的指令, 也可用Byte來代替 例: DB E8 ED BB 25 01

DeAlloc(HP)
DeAlloc(MP)
DeAlloc(CheckHP)
DeAlloc(CheckMP)
DeAlloc(PressKey)

效果如影片:





已有 6 人評分楓幣 威望 骰子 GP 收起 理由
tedhenry + 1 + 1 + 1
Anonymous_Leo + 50 + 3 + 1 + 3 精品文章!
verywant + 50 + 3 + 1 + 3 讚一個!
箱箱有禮 + 1
smilelin0419 + 10 + 1 + 1 + 1 精品文章!
tonydupko + 1 + 1 + 1 讚一個!

總評分: 楓幣 + 112  威望 + 7  骰子 + 6  GP + 9   查看全部評分

複製連結並發給好友,以賺取推廣點數
簡單兩步驟,註冊、分享網址,即可獲得獎勵! 一起推廣文章換商品、賺$$

2101

主題

12

好友

188

積分

註冊會員

Rank: 2

UID
249601
帖子
3028
主題
2101
精華
0
積分
188
楓幣
223
威望
175
存款
0
贊助金額
0
推廣
19
GP
169
閱讀權限
20
性別
保密
在線時間
266 小時
註冊時間
2018-10-10
最後登入
2024-3-22

太陽勳章 發帖達人 私服達人 Android勳章 神手勳章 2018年紀念勳章 2018萬聖節紀念勳章 2019年紀念勳章 熱心助人 2020年紀念勳章 富豪勳章 性別(女) 性別(男) 音樂勳章 懶人勳章 幼兒勳章 2020端午節紀念勳章 積分勳章 2020中秋節紀念勳章 解說達人 屁孩勳章 論壇粉絲 2020聖誕節紀念勳章 2021年紀念勳章 除蟲大隊 2021中秋節紀念勳章 2021聖誕節紀念勳章 2022年紀念勳章 論壇支持王 2022中秋節紀念勳章 2022聖誕節紀念勳章 2023年紀念勳章 2023端午節紀念勳章 2024年紀念勳章

發表於 2020-12-23 16:02:02 |顯示全部樓層

94ead4e687ea052412e613fa435aaf66

點評

rhg59321  看不完或不想看的話我很抱歉, 我比較怕解釋的還不夠清楚...  發表於 2020-12-23 17:53
回覆

使用道具 舉報

398

主題

5

好友

1504

積分

版主

Rank: 7Rank: 7Rank: 7

UID
127666
帖子
2510
主題
398
精華
0
積分
1504
楓幣
8639
威望
1052
存款
7341
贊助金額
1500
推廣
20
GP
4093
閱讀權限
150
在線時間
1549 小時
註冊時間
2016-1-30
最後登入
2024-3-28

Apple勳章 2018萬聖節紀念勳章 2018聖誕節紀念勳章 論壇支持王 VIP會員 高級客戶 解說達人 論壇粉絲 積分勳章 發帖達人 貢獻王 太陽勳章 2019年紀念勳章 神手勳章 2019端午節紀念勳章 Android勳章 長老勳章 2019中秋節紀念勳章 2019聖誕節紀念勳章 管理者 版主勳章 2020年紀念勳章 熱心助人 核心勳章 屁孩勳章 懶人勳章 音樂勳章 幼兒勳章 富豪勳章 富可敵國 2020端午節紀念勳章 2020中秋節紀念勳章 2021年紀念勳章 聖誕節紀念勳章 聖誕節紀念勳章2 在線終極王 2021中秋節紀念勳章 2022年紀念勳章 除蟲大隊 2022端午節紀念勳章 2022中秋節紀念勳章 2023年紀念勳章 2023端午節紀念勳章 2023中秋節紀念勳章 2023聖誕節紀念勳章 2024年紀念勳章

發表於 2020-12-23 17:25:07 |顯示全部樓層
我相信 一定很多人會覺得你在公三小 然後再跟你說 有沒有啥數據XDDD

點評

smilelin0419  這種話你ㄉ得出來  發表於 2020-12-23 20:12
btb  黑的要死,都不分享數據的  發表於 2020-12-23 18:28
prt  有啥數據嗎  發表於 2020-12-23 18:21
rhg59321  我努力打得很白話了...這樣在看不懂我在公三小就要請你出馬解釋了XD, 我這邊都沒數據, 很可憐的  發表於 2020-12-23 17:53
回覆

使用道具 舉報

1

主題

0

好友

16

積分

新手上路

Rank: 1

UID
29838
帖子
19
主題
1
精華
0
積分
16
楓幣
1642
威望
14
存款
0
贊助金額
0
推廣
0
GP
1
閱讀權限
10
性別
保密
在線時間
32 小時
註冊時間
2013-4-29
最後登入
2024-2-29

Apple勳章

發表於 2020-12-24 09:29:24 |顯示全部樓層
太實用了,謝謝版主題通的詳細教學。
奔馳男孩
回覆

使用道具 舉報

14

主題

2

好友

30

積分

新手上路

Rank: 1

UID
302855
帖子
334
主題
14
精華
0
積分
30
楓幣
1467
威望
20
存款
0
贊助金額
0
推廣
0
GP
6
閱讀權限
10
性別
保密
在線時間
200 小時
註冊時間
2021-5-1
最後登入
2024-3-11
發表於 2021-5-2 00:05:32 |顯示全部樓層
感谢大大的分享,我好开心哦
回覆

使用道具 舉報

0

主題

0

好友

0

積分

新手上路

Rank: 1

UID
309252
帖子
23
主題
0
精華
0
積分
0
楓幣
-3
威望
0
存款
0
贊助金額
0
推廣
0
GP
0
閱讀權限
10
性別
保密
在線時間
0 小時
註冊時間
2021-7-1
最後登入
2021-7-1
發表於 2021-7-1 11:04:48 |顯示全部樓層
來拿1楓幣 路過~~
[發帖際遇]: ayoyollg 辛苦連續加班12天,工作「做功德」,終於獲得加班費 2 楓幣 幸運榜 / 衰神榜
回覆

使用道具 舉報

0

主題

0

好友

2

積分

新手上路

Rank: 1

UID
311422
帖子
9
主題
0
精華
0
積分
2
楓幣
11
威望
0
存款
0
贊助金額
0
推廣
0
GP
0
閱讀權限
10
在線時間
47 小時
註冊時間
2021-7-15
最後登入
2022-9-26
發表於 2021-9-8 22:58:23 |顯示全部樓層
想請問為什麼我新增地址那邊全部都是問號
1.jpg
[發帖際遇]: 丁柏文 正確回答議員「陳彥伯」的「肚臍」提問,因而獲得獎勵 1 楓幣 幸運榜 / 衰神榜
回覆

使用道具 舉報

0

主題

0

好友

22

積分

新手上路

Rank: 1

UID
91271
帖子
28
主題
0
精華
0
積分
22
楓幣
76
威望
20
存款
0
贊助金額
0
推廣
0
GP
0
閱讀權限
10
性別
保密
在線時間
33 小時
註冊時間
2015-2-7
最後登入
2024-3-16
發表於 2023-1-30 01:06:18 |顯示全部樓層
攻擊次數的要如何修改??
我照著本篇文章最後鎖定之後沒有任何效果
回覆

使用道具 舉報

0

主題

0

好友

-1

積分

限制會員

UID
268117
帖子
2
主題
0
精華
0
積分
-1
楓幣
25
威望
-1
存款
0
贊助金額
0
推廣
0
GP
0
閱讀權限
0
性別
保密
在線時間
3 小時
註冊時間
2019-8-4
最後登入
2023-8-16
發表於 2023-8-5 04:01:05 |顯示全部樓層
過來拿1楓畢路過
已有 1 人評分楓幣 收起 理由
qwas963563 -10 萬用回文

總評分: 楓幣 -10   查看全部評分

回覆

使用道具 舉報

0

主題

0

好友

1

積分

新手上路

Rank: 1

UID
402984
帖子
16
主題
0
精華
0
積分
1
楓幣
241
威望
1
存款
0
贊助金額
0
推廣
0
GP
0
閱讀權限
10
性別
保密
在線時間
8 小時
註冊時間
2023-9-2
最後登入
2024-2-9
發表於 2023-9-5 18:25:35 |顯示全部樓層
感謝大大的分享喔,對初學者很友好啊!
[發帖際遇]: 刘四 因為不想被「肌肉男」嗆「你是捐多少?」,因此捐款 1 楓幣 幸運榜 / 衰神榜
回覆

使用道具 舉報

1

主題

0

好友

0

積分

新手上路

Rank: 1

UID
405601
帖子
28
主題
1
精華
0
積分
0
楓幣
-13
威望
0
存款
0
贊助金額
0
推廣
0
GP
0
閱讀權限
10
性別
保密
在線時間
1 小時
註冊時間
2023-9-21
最後登入
2023-9-29
發表於 2023-9-29 11:03:43 |顯示全部樓層
不會被檢測嗎?
回覆

使用道具 舉報

1

主題

0

好友

0

積分

新手上路

Rank: 1

UID
405601
帖子
28
主題
1
精華
0
積分
0
楓幣
-13
威望
0
存款
0
贊助金額
0
推廣
0
GP
0
閱讀權限
10
性別
保密
在線時間
1 小時
註冊時間
2023-9-21
最後登入
2023-9-29
發表於 2023-9-29 11:06:06 |顯示全部樓層
為什麽我CE打開了沒一會就會被T下線呢。。這個咋解決呢
回覆

使用道具 舉報

2

主題

0

好友

1

積分

新手上路

Rank: 1

UID
407649
帖子
11
主題
2
精華
0
積分
1
楓幣
96
威望
0
存款
0
贊助金額
0
推廣
0
GP
0
閱讀權限
10
性別
保密
在線時間
11 小時
註冊時間
2023-10-7
最後登入
2023-11-30

Apple勳章

發表於 2023-10-8 06:50:17 |顯示全部樓層
拿一個楓幣吧
[發帖際遇]: 328454407 為了避免被「就讀腐大的咬蚊子」嗆「多讀點書」,因此購買大量書籍,花費 1 楓幣 幸運榜 / 衰神榜
回覆

使用道具 舉報

您需要登入後才可以回文 登入 | 立即註冊

廣告刊登意見回饋關於我們職位招聘本站規範DMCA隱私權政策

Copyright © 2011-2024 冰楓論壇, All rights reserved

免責聲明:本網站是以即時上載留言的方式運作,本站對所有留言的真實性、完整性及立場等,不負任何法律責任。

而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。

小黑屋|手機版|冰楓論壇

GMT+8, 2024-3-28 23:12

回頂部