Показать сообщение отдельно
Непрочитано 31.07.2016, 03:36   #33
Аватар для Zubastic
ZG troll squad

Автор темы (Топик Стартер) Re: C++ перехват пакетов

		void** UNetworkHandler_AddNetworkQueue = (void**)(hEngine + CalcOffset(0x20554600)); // ?AddNetworkQueue@UNetworkHandler@@UAEHPAUNetworkPacket@@@Z 0x20554600 - helios
		void** UNetworkHandler_vftable = (void**)(hEngine + CalcOffset(0x2072E94C));		 // ??_7UNetworkHandler@@6BUObject@@@ 0x2072E94C - helios 0x72D74C
		void** UNetworkHandler_OutgoingPacket = (void**)(hEngine + CalcOffset(0x2072DF98));  // 0x2072DF98 - helios 0x72CD98
		char buf[1024];
		/*
[29384] UNetworkHandler_AddNetworkQueue Offset=0x20554600
[29384] UNetworkHandler_vftable Offset=0x2072e94c
[29384] UNetworkHandler_OutgoingPacket Offset=0x2072df98
		*/
		wsprintfA(buf, "UNetworkHandler_AddNetworkQueue Offset=0x%x", UNetworkHandler_AddNetworkQueue);
		OutputDebugStringA(buf);
		wsprintfA(buf, "UNetworkHandler_vftable Offset=0x%x", UNetworkHandler_vftable);
		OutputDebugStringA(buf);
		wsprintfA(buf, "UNetworkHandler_OutgoingPacket Offset=0x%x", UNetworkHandler_OutgoingPacket);
		OutputDebugStringA(buf);
		(FARPROC&)true_UNetworkHandler_OutgoingPacket = FARPROC(*UNetworkHandler_OutgoingPacket);
		OutputDebugStringA("true_UNetworkHandler_OutgoingPacket!");
		(FARPROC&)UNetworkHandler_OutgoingPacket = (FARPROC)*UNetworkHandler_OutgoingPacket_hook;
		OutputDebugStringA("UNetworkHandler_OutgoingPacket_hook!");
		void** incomming = (UNetworkHandler_vftable + 0x22);
		(FARPROC&)(incomming) = (FARPROC)*UNetworkHandler_IncommingPacket_hook;
		OutputDebugStringA("UNetworkHandler_IncommingPacket_hook!");
Code: C++
Вот еще одна проблемка, код выполняется, но никакого перехвата нет и в помине, однако если пытаюсь сделать так:
		void** incomming = (UNetworkHandler_vftable + 0x22);
		*incomming = (void*)UNetworkHandler_IncommingPacket_hook;
Code: C++
Получаю зависание при старте и соответственно ничего не работает. Где ошибка не могу понять, при этом на хф код работает нормально такой.
__________________
Zubastic вне форума Ответить с цитированием