Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
C++ перехват пакетов
#11
Проверил, адреса совпадают.
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ
#12
Если временно сделать так то отрабатывает без ошибок? понятно что пакеты не будут отправлены.

PHP код:
<?php 
//Клиентские пакеты
int __cdecl UNetworkHandler_OutgoingPacket_hook(unsigned int This, char *Format, ...)
{
//true_UNetworkHandler_OutgoingPacket(This, Format, ...);
return 0;
}
Ответ
#13
Да, все нормально.
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ
#14
И что такая конструкция прям так компилируется с троеточием в аргументах :eek:?
PHP код:
<?php 
true_UNetworkHandler_OutgoingPacket
(This, Format, ...);

Функция sendPacket идет с переменным числом аргументов и есть нюансы. Попробуйте пока вызвать так:
PHP код:
<?php 
//Клиентские пакеты
void __cdecl UNetworkHandler_OutgoingPacket_hook(unsigned int This, char *Format, ...)
{
unsigned char buf[10240];
int size = 0, len;
wchar_t *wstr;

va_list args;
va_start(args, Format);

while (*
Format != 0)
{
switch (*
Format)
{
case
'c':
*(
unsigned char*) (buf + size) = va_arg(args, unsigned char);
size++;
break;
case
'h':
*(
unsigned short int*) (buf + size) = va_arg(args, unsigned short int);
size += 2;
break;
case
'd':
*(
unsigned int*) (buf + size) = va_arg(args, unsigned int);
size += 4;
break;
case
'Q':
*(
unsigned __int64*) (buf + size) = va_arg(args, unsigned __int64);
size += 8;
break;
case
'b':
len = va_arg(args, unsigned int);
memcpy(buf + size, va_arg(args, void*), len);
size += len;
break;
case
'S':
wstr = va_arg(args, wchar_t*);
if (
wstr == 0)
{
len = 2;
*(
unsigned short int*) (buf + size) = 0;
}
else
{
len = wcslen(wstr) * 2 + 2;
memcpy(buf + size, wstr, len);
}
size += len;
break;
}
Format++;
}

va_end(args);

true_UNetworkHandler_OutgoingPacket(This, "b", size, (int)buf);
}
Тем более для того что вы делаете это как раз понадобится. На выходе у вас готовый буфер с пакетом.
Ответ
#15
Это псевдофункция. С тем, что у Вас - крит.
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ
#16
А патч чистый или может с какой то защитой?
Ответ
#17
а) Патч чистый.
б) Хватит копипастить код из шарных *Гвардов.
Ответ
#18
Persy Написал:а) Патч чистый.
б) Хватит копипастить код из шарных *Гвардов.

Это не просто код из шары, это рабочий код. Лично проверено и используется в специальном патче для HF.
Ответ
#19
Возможно проблема в дллке клаба, проверим ка и эту теорию...
Вообще мне код обработки пакетов не нравится, он какой-то ущербный...
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ
#20
Не помогло. Используем 273 протокол, патч от рпг клаба без system.dll
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Свой сниффер и редактор пакетов SiriusED 0 473 03-22-2024, 03:28 AM
Последний пост: SiriusED
  Реконструкция пакетов из WSARecv\WSASend ANZO 3 2,495 04-17-2016, 08:34 PM
Последний пост: Necroz-Team
  Подмен пакетов katanasmil 4 3,094 06-16-2014, 07:24 PM
Последний пост: PROGRAMMATOR
  Опкоды пакетов при хуке Mifesto 3 2,438 07-09-2013, 04:18 PM
Последний пост: Mifesto

Перейти к форуму:


Пользователи, просматривающие эту тему: 2 Гость(ей)