nt!NtGetContextThread+0x57:
805c769b 8bcf mov ecx,edi
805c769d e880baf5ff call nt!ObfDereferenceObject (80523122)
805c76a2 5f pop edi <-----这里是hook的地方
nt!NtGetContextThread+0x5f:
805c76a3 8bc6 mov eax,esi
805c76a5 5e pop esi
805c76a6 c9 leave
805c76a7 c20800 ret 8<-----跳回的地方
原本想在NtGetContextThread这里Hook一下,以达绕过程序通过调用GetThreadContext的时候判断是否存在硬件断点,但是现在仅仅是加了一个jmp跳转出去。。。然后执行被覆盖的几个指令805c76a2 5f
pop edi <-----这里是hook的地方
nt!NtGetContextThread+0x5f:
805c76a3 8bc6 mov eax,esi
805c76a5 5e pop esi
805c76a6 c9 leave
最后跳回805c76a7 c20800 ret 8<-----跳回的地方
不知道为什么用其他程序调用GetThreadContext时会出现ERROR_MR_MID_NOT_FOUND is being returned这个提示貌似我还没做任何操作。。。望大家帮忙解答一下,谢谢
提示信息如下: EndRTL: RtlNtStatusToDosError(0x805c76a7): No Valid Win32 Error Mapping
RTL: Edit ntos\rtl\generr.c to correct the problem
RTL: ERROR_MR_MID_NOT_FOUND is being returned