Jhem,you did wonderful.But it is more trouble in China. TenProtect checks Virtual Table, it's impossible to hook functions by writing a new pointer to the table simplely.
I read your post <Undetected EndScene Hook for AssaultFire> and test in OllyDbg for whole night and I hooked DrawIndexedPrimitive and other important functions successfully.
You set a inline hook to bypass TP, Outstanding~Just like the difference between SSDT hooks & Inline hooks in ring0 kernel.
But I met a fatal problem, if I just inject a empty DLL with hook but do nothing into TGame.exe , it works normally.
If I add the codes to DrawIndexedPrimitive_hook
Code:
pDevice->GetStreamSource(0,&pStreamData,&iOffsetInBytes,&Stride);
Fps down to 9~13 and the game will crash in 3mins
And ...
Code:
Sorry for my poor English
Thank you for your hard work