无法使用IDA PRO找到函数的基址(使用vs2015编译)

时间:2016-01-09 17:48:34

标签: c++ reverse-engineering ida

嗨所以我只是想学习逆向工程,当我在IDA专业版中打开我的程序时,我发现这个地址为sub_11330(重新定义为0)https://gyazo.com/1c34d2c31f29583f05d0dd4d956d6f74但是当我尝试挂钩这个函数时,地址GetModuleHandle( NULL)+ 0x11330不起作用所以我只是尝试用std :: cout<<打印函数的基地址(DWORD)callme - (DWORD)GetModuleHandle(NULL)当我尝试这个地址它工作(0x1128a)为什么我不能用IDA找到它?抱歉,如果我不清楚你是否能理解我试图解释的内容,我会写下我的帖子。

这就是我挂钩的方式

int WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
{

    if (dwReason == DLL_PROCESS_ATTACH)
    {
        std::cout << "injected" << std::endl;
        Detour((PBYTE)GetModuleHandle(NULL) + 0x1128a, (PBYTE)&func);
    }

    return true;
}

我的函数绕道只改变函数的前5个字节,这个可以在调试模式下用vs2015编译我的程序是用c ++编写的控制台应用程序

0 个答案:

没有答案