![]() |
PCDVD數位科技討論區
(https://www.pcdvd.com.tw/index.php)
- 七嘴八舌異言堂
(https://www.pcdvd.com.tw/forumdisplay.php?f=12)
- - 請教有除錯大師 組合語言的高手嗎 拜託別沉下去
(https://www.pcdvd.com.tw/showthread.php?t=670893)
|
---|
請教有除錯大師 組合語言的高手嗎 拜託別沉下去
假設得到記憶體 03700000h 的數據 大小 25 byte
edx 為指標 = 03700000h eax 為大小 = 25 byte (HEX) 數據如下 03700000 02 02 25 00 64 6C 20 73 65 6E 64 20 64 61 74 61 %.dl send data 03700010 20 31 30 31 00 第1部分 ------------------------------- 將eax暫時存放在 10051300 03700011 03700013 移動到 ax 比較ax 是否等於3131 正確則跳 不跳則又將 10051300 存放的數據放回eax 返回 -------------code-------------- mov dword ptr ds:[10051300],eax mov ah,byte ptr ss:[edx+11] mov al,byte ptr ss:[edx+13] cmp ax,3131 je 跳到第2部分 mov eax,dword ptr ds:[10051300] retn -------------------------------- 第2部分 ------------------------------- 跳以後將 10051310h 位置上的5個位元組 01 01 05 00 01 寫到 edx 的指標 03700000h 位置上 變成 03700000h 01 01 05 00 01 把eax變為00000005 返回 -------------code-------------- ????????? mov eax,5 retn ------------------------------- 第1部分我知道是這樣 但是第二部分 把1005310h 的五個位元組 寫到03700000h該怎麼表現出來呢 也就是問號???部分 我想用SoftICE打個patch但無奈初學者 能力有限 麻煩眾高手大濕指導一下 感謝 :p |
我不太熟..可不可以這樣寫:p
mov dl,byte ptr [0x10051310] mov byte ptr edx,dl 重複五次..每次edx和0x10051310的值都加1 |
我把你從第18頁頂回去
日行一善是應該的,不用謝謝 |
引用:
為人民服務嗎.. :laugh: |
可惡
以前學過masm ,以前也是很喜歡用 softice 破解軟體 也寫了一些破解程式,註冊機啦... 再不在新竹? 立刻過去跟你研究一下 麻煩準備 masm 的書 我要複習一下 好像要用到 lea 這個指令... 忘了... :p 一直想複習一下.. 如果你在台北...假日有空去找你複習 一下 masm 如果你只是想個 patch , 應該有更簡單的辦法 就是跳過他檢查的地方就好了 如果是想寫註冊機...那只好多花一點手腳了... 你想破解什麼程式, 現在很多程式都有加殼 我那時候最強的殼是 asprotect 吧.. 我有點忘了...對 function address table 嚴重加密 還要把他解出來...還要還原... 等等... 以前玩過..太久沒完都忘了... |
幫樓主推一下...
|
你只要傳5BYTES而已,直接搬不就行了,第一次4BYTE,第2次1BYTE,不就行了,你想的太複雜了。
|
幫台法雞乖人工置頂!! :D :D :D
|
所有的時間均為GMT +8。 現在的時間是02:08 PM. |
vBulletin Version 3.0.1
powered_by_vbulletin 2025。