递归火山软件开发平台

标题: 有木有大佬帮忙封装一段C++代码 [打印本页]

作者: 86339218    时间: 2024-11-2 13:17
标题: 有木有大佬帮忙封装一段C++代码

void SetCompleteHook(BYTE head,DWORD offset,...) // OK
{
        DWORD OldProtect;

        VirtualProtect((void*)offset,5,PAGE_EXECUTE_READWRITE,&OldProtect);

        if(head != 0xFF)
        {
                *(BYTE*)(offset) = head;
        }

        DWORD* function = &offset+1;

        *(DWORD*)(offset+1) = (*function)-(offset+5);

        VirtualProtect((void*)offset,5,OldProtect,&OldProtect);
}



作者: cxz7411    时间: 2024-11-2 13:26
1.直接嵌入式,2.用微软的detours hook库多方便啊
作者: 落雪有声    时间: 2024-11-2 13:34
  1. <火山程序 类型 = "通常" 版本 = 1 />

  2. 方法 SetCompleteHook <公开 静态 @禁止流程检查 = 真>
  3. 参数 head <类型 = 字节>
  4. 参数 offset <类型 = 变整数>
  5. {
  6.     @ DWORD OldProtect;
  7.     @ VirtualProtect((void*)@<offset>,5,PAGE_EXECUTE_READWRITE,&OldProtect);
  8.     @ if(@<head> != 0xFF){
  9.     @     *(BYTE*)(@<offset>) = @<head>;
  10.     @ }
  11.     @ DWORD* function = &(DWORD)@<offset>+1;
  12.     @ *(DWORD*)(@<offset>+1) = (*function)-(@<offset>+5);
  13.     @ VirtualProtect((void*)@<offset>,5,OldProtect,&OldProtect);

  14. }
复制代码





欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4