HELLO ANYONE CAN HELP ME HOW TO MAKE THIS UNDETECTED?
PLEASE CHECK CODE BELOW

Code:
VOID WINAPI DIRECT3D() // hook detected
{
	PDWORD D3DVTable;
	do
	{
		*(DWORD*)&D3DVTable = *(DWORD*)Tools.D3D9VTable();
	} while (!D3DVTable);

	pReset = (oReset)Tools.DetourCreate((PBYTE)D3DVTable[16], (PBYTE)myReset, 5);
	pEndScene = (oEndScene)Tools.DetourCreate((PBYTE)D3DVTable[42], (PBYTE)myEndScene, 5); // specially hooking endscene = detected
}

BOOL WINAPI DllMain(HMODULE hDll, DWORD dwReason, LPVOID lpReserved)
{
	switch (dwReason)
	{
	case DLL_PROCESS_ATTACH:
		CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)DIRECT3D, hDll, NULL, NULL);
		MessageBoxA(NULL, "INJECTED", "NEWBIEX CFPH 2.0", NULL);
		GetModuleFileNameA(hDll, dlldir, 512);//detected
		/*	for(int i = ( int )strlen( dlldir ); i > 0; i--)
		{
		if(dlldir[i] == '\\')
		{
		dlldir[i+1] = 0;
		break;
		}
		}	*/
		break;

	case DLL_PROCESS_DETACH:
		break;
	}
	return TRUE;
}