freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

apihook完全手冊(cè)(編輯修改稿)

2024-07-22 06:00 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 D PTR [00400120H]…如果我們手動(dòng)把這段代碼copy到另外一個(gè)地方,如00500000,那么顯然00400120H這個(gè)地址需要被修改,我們當(dāng)然可以仿照自重定位的方法來手動(dòng)修改這個(gè)地址值,但是通常較簡(jiǎn)單的方法是寫自重定位代碼,這樣的代碼可以在任意地址執(zhí)行,具體做法如下:call @F@@:pop ebxsub ebx,offset @BDATA db 12h, 34h, 56h, 78hMOV EAX, [EBX + DATA]可以看到,該段代碼通過使用call指令壓入當(dāng)前地址eip并彈出從而得到當(dāng)前地址。然后,用當(dāng)前地址減去其標(biāo)號(hào)的偏移量就得到重定位修正值,存入ebx之中。之后,就可以使用ebx作為一個(gè)基準(zhǔn)來訪問數(shù)據(jù),以后訪問數(shù)據(jù)可以用EBX + ???來訪問,這樣由于EBX會(huì)根據(jù)當(dāng)前的地址值而變化,所以這段代碼是自重定位的。下面給出一段代碼,這段代碼中的InjectRemoteCode函數(shù)負(fù)責(zé)將RemoteThread這個(gè)函數(shù)的自重定位代碼Copy到其他進(jìn)程中執(zhí)行:。=============================================================================。 。 Author : ATField。 Description :。 This assembly file contains a InjectRemoteCode function。 which injects remote code into a process。 History :。 200438 Start。 200439 Completed and tested.。 2004326 bug fix:。 not all clients connected。 Wait for pletion of the remote thread。=============================================================================.386.MODEL FLAT, STDCALL 。 must be stdcall here,。 or link error will occurOPTION CASEMAP:NONE INCLUDE INCLUDE INCLUDELIB INCLUDE INCLUDELIB 。INCLUDE .DATAhRemoteThread dd 0szKernel32 db 39。39。,0hmodKernel32 dd 0szGetProcAddress db 39。GetProcAddress39。,0szLoadLibraryA db 39。LoadLibraryA39。,0lpRemoteCode dd 0lpGetProcAddress dd 0lpLoadLibraryA dd 0.CODE。=============================================================================。 remote code starts here。=============================================================================REMOTE_CODE_START equ this byte。=============================================================================。 data。=============================================================================lpRemoteGetProcAddress dd 0lpRemoteLoadLibraryA dd 0szRemoteDllPathName db 255 dup(0)lpRemoteDllHandle dd 0lpRemoteInitDll dd 0szRemoteInitDllFuncName db 39。InitializeDll39。,0。=============================================================================RemoteThread PROC uses ebx lParam 。=====================================================================。 relocation。=====================================================================。 just for debug。int 3 call @F@@:pop ebxsub ebx,offset @B 。 LoadLibraryA szRemoteDllPathNamelea ecx, [ebx + offset szRemoteDllPathName]push ecxcall [ebx + offset lpRemoteLoadLibraryA] test eax, eaxjz error mov [ebx + offset lpRemoteDllHandle], eax。 GetProcAddress hModule InitializeDlllea ecx, [ebx + offset szRemoteInitDllFuncName]push ecx 。 39。InitializeDll39。push [ebx + offset lpRemoteDllHandle] 。 hmodulecall [ebx + offset lpRemoteGetProcAddress] test eax, eaxjz error 。 InitializeDll()call eaxreterror:mov eax, 1retRemoteThread endpREMOTE_CODE_END equ this byte
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1