Всем привет!
Оч надеюсь на Вашу помощь)
В общем задача такова: Заменить клиентские ::SendPacket и ::RecvPacket
с SendPacket я разобрался..
Код:
asm
{
mov ecx, [pUNetworkHandler]
mov eax, [ecx+048h]
mov ecx, [eax]
mov eax, [ecx+06Ch] //GF
//mov eax, [ecx+068h] //IT
mov pSendPacket, eax
}
//SplaisingVMT((void *)pSendPacket,(void *)pSendPacket,SendPacketH);
//CreatNewConnect();
Код:
void __cdecl SendPacketH(void * Object, char * format, ...)
{
va_list arglist; // Переменные
va_start(arglist,format);
char c_Packet[8120];
C_PacketConstructor Packet;
Packet.SetPointer(&c_Packet[0]);
for (int len=0; *format; format++)
{
switch (*format)
{
case 'c': Packet.WriteC(va_arg(arglist,unsigned char)); len++; break;
case 'h': Packet.WriteH(va_arg(arglist,short));len++; break;
case 'd': Packet.WriteI(va_arg(arglist,int));len++; break;
case 'f': Packet.WriteF(va_arg(arglist,float)); len++; break;
case 'Q': Packet.WriteD(va_arg(arglist,__int64)); len++; break;
case 's': Packet.Writes(va_arg(arglist,char *));len++; break;
case 'S': Packet.WriteS(va_arg(arglist,wchar_t *));len++; break;
case 'b':
case 'x':
{
int cb=va_arg(arglist,int);
const char* p=va_arg(arglist,const char*);
Packet.WriteB(p,cb);
} break;
}
}
//EncryptPacket(c_Packet);
send(NewSocket, c_Packet, Packet.GetSize(), 0);
return;
};
А вот с RecvPacket чуть не понятно...
Подскажите плиз где его искать то?)