Привет всем!
В честь слива я хотел рассказать про такую вещь как пакеты в ПБ!
До недавнего времени это было и для меня глухим лесом, сейчас я посвящу и вас!
Что же такое пакеты? Ну если по простому то это маленький блок информации которую мы отправляем на сервак...
Разбираем их в клиенте, сама функция находится по адресу 0x46C440
Если в IDA мы нажмем Ф5 мы увидим огромную функцию
signed int __stdcall sub_46C440(signed int a1, int a2, int a3, int a4, int a5, int a6)
Как видим функция принимает 6 аргументов, отправлять их мы будем задом наперед
a1 - номер пакета
а2 - инфа для пакета 1
а3 - инфа для пакета 2
а4,а5,а6 - тоже самое, например для антикика надо 2 аргумента
Также нам понадобится указание на класс GameContext ну и сам адрес функции пакетов!
Это была теория, теперь практика - как же искать пакеты? Либо нарыть где-то ловилку пакетов ( в скайпе не просить
), либо вводить в поиске 46C440, и там где будет вызов этого адреса теоретически будет отправка какого нибудь пакета!
Для ленивых номера некоторых пакетов:
98 - голосование
91 - пробег на дино
83 - автовход в бой
Теперь собираем всё это на примере пробегов
void Probegi(int argument1)
{
DWORD PacketAdress = 0x46C440;
DWORD GameContext = *(DWORD*)0xAA39C8;
{
push 0 //a6
push 0 //a5
push 0 //a4
push 0//a3
lea eax, [argument1]
push eax //a2 - инфа для пакета
push 98h//a1 или номер пакета
mov ecx, GameContext // класс GameContext
call PacketAdress //Вызов функции пакетов
}
}
Теперь там где нам удобно прописываем
Progebi( ID_USER ); //эт типа сама отправка
//ID_USER - чел который по сути будет пробегать
Экспериментируйте, пробуйте, вдруг что нибудь интересное найдете!!
Также не забудьте сверить аргументы с теми что в клиенте, а то возможны краши и кики!
Рекомендую отправлять пакеты только в бою, в лобби вас кикнет
Всё это рассказываю по собственному опыту, и по нескольким часам проведенных в IDA
Пишите свои вопросы в комментариях, отвечу как смогу
Слив окончен