2015年1月23日 星期五

攻擊次數Pointer的尋找


作者:微o
來源:http://ibf.tw/5ShFM
備註:如果作者不希望被轉帖到此處,請告知,小弟會馬上刪帖。
-------------------------------------------------------------------------------------

相信有人也有這樣的問題...攻擊次數的offset怎麼搜都搜不到!!!
今天帶大家來了解一下 xD  黑黑的大大們請略過 <(_ _)>

首先呢! 請開啟你的UCE(這裡我用CE6.3示範)
接下來就是要搜尋攻擊次數拉!!!
角色攻擊1下,請搜尋1;攻擊2下,請搜尋2 以此類推......
你將會得到一個位址  這裡找出地的是1B06FF54



當然這只是個浮動位址,重新開啟遊戲就會不見~
接下來 我們把它移到下面的表單!
右鍵-->找出什麼改寫這個位址


觸發一下事件 會找到以下地址!
到這個步驟後,通常是尋找[ECX+08]中的ECX
找到這個ECX(1B06FF4C)的基址後就可以結束了!
可是偏偏找不到基址...那只好去看看記憶體了解一下.


大致上長這個樣子...沒拍到整個函數就是了!
在這還是無法看出什麼...再往前找看看
找出誰呼叫了這個函數! 你可以在RET地方F5下斷點
或者呢...笨笨的搜尋!


搜尋函數頭的Add 看有哪裡跟這個位址有關
P.s 右邊的來源請調整為00400000,從頭搜尋以免漏掉!


搜尋的結果...大多都是Call這個函數


隨便點幾個觀察後 你會發現都會有以下的規律
  1. <div>mov ecx,[ebp-0000XXXX]</div><div>add ecx,00008278</div><div>call 00A81D95</div>
複製代碼
那就好辦了...隨便點擊一個進去 !
找出這個ECX到底是多少...


這裡很乾脆的直接F5找出ECX的值 ((省時間也省得拍圖 xDD
當然用數據也是可以!!! 找到的值是 1AB2AA2C


找出ECX的值後 先去找找是否有基址....
很幸運的...在此終於找到基址 011C7274


由上面的某個步驟得知...
遊戲會把某個位址的值丟到ECX,再把ECX+8278,再來就是Call 00A81D95
Call裡幹了有的沒的之後 把攻擊次數丟進 [ECX+08]
而我們要的Pointer就是...[[011C7274]+8278+8] 也就是 [[011C7274]+8280]
這樣大家之後應該就比較知道如何更新了吧! xDD

End...感謝閱讀!!

沒有留言:

張貼留言