Да пока интересует чтение, но было бы интересно и запись.
Сейчас смотрю в сторону gameShieldDll.dll, через нее идет обмен пакетами с сервером? До нее должна быть стандартная шифрация?
Yegor, причем тут чтение и запись?, чтение и запись чего и во что??
я спрашивал пакеты какого направления тебя интересуют, от сервера клиенту или наоборот?
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor, с приемом пакета полностью разобрался все работает.
Теперь нужны идеи по поводу отправки. В соседней теме "Радар своими руками" в этом посте http://coderx.ru/showpost.php?p=62580&postcount=53 кое что указано, но остается не ясным как на самом деле называется функция, которую murc вызывает в своих функциях L2MemoryAlloc. Там указаны прямые адреcа а названий нет
Есть такой вопросец. В общем попытался я перехватить эту функцию с помощью удаленных потоков и перезаписью таблицы импорта на asterios.tm, но обнаружил для себя - что такого метода в их версии Engine.dll - попросту нет. Либо они его переписали под себя(изменили название методов) либо еще что. Не суть важно. Попытался - посмотреть под отладчиком что там вообще происходит, l2 при виде отладчика сразу критует, судя по всему так задуманно, так как они используют у себя АПИ функцию IsDebuggerPresent, и в случае если она вернет истину - просто критуют клиента. Решил значит я с помощью перетирания таблицы импорта просто заменить эту функцию своей. Но пока что безуспешно, либо я где то ошибся, либо они вызывают ее по хитрому, и нужно копать глубже. Так вот возникает вопрос - может уже кто то колупался на клиенте астериоса с этим ? Знает кто то, на какие функции они поменяли исходные?
Последний раз редактировалось respown, 09.07.2016 в 10:37.
Как то можно вычислить какие параметры передаются при вызове определнной функции? Или только через дизасемблер?
Может в какой нибудь регистр заносится количество параметров помещенных в стек.
Вобщем перехватил фукнцию AddNetworkQueue но не могу разобратся до конца.
Вот моя функция которая вызываетс клиентом вместо AddNetworkQueue
delphi Код:
procedure ConnectHookProc; register;
begin
asm
pushad;
end;
//полезный код
..............
asm
popad;
jmp [ConnectNextHook]; // переход в ориг-ую функцию AddNetworkQueue end;
end;
Пока что никакие параметры функции не трогаю. такая связка работает без проблемм, но если между 1 и 2 ассемблерным блоком добавить вызов своей функции то л2 вылетает сразу с критом. Вроде все регистры нужные регистры я сохранил, проверял указатель на стек восстанавливается корректно. Что еще я не учел?