64 位 Hook

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/osummertime/article/details/53125960

具体代码请参考

改动的代码

_asm
    {
        lea rdi, OldCode        
        mov rsi, oldAddr 
        cld   
        movsd 
        movsb 
    }
    NewCode[0] = 0xe9;
    _asm
    {
        lea rax, Core
        mov rbx, oldAddr  
        sub rax, rbx             
        sub rax, 5           
        mov qword ptr[NewCode + 1], rax//原来四字节换成八字节
    }

因为64位,寄存器变了,所以换了寄存器

这里写图片描述
这里写图片描述
哈哈HooK成功!

vs2015 64 位下是不能识别asm的,要下载Intel C++ Compiler ,我是 17.0

64位Hook测试样本

展开阅读全文

没有更多推荐了,返回首页