Цитата:
Сообщение от Deazer
нцсофт добавил легкий способ отключить ГГ, поменяв 1 байт, причем теперь знать асм вовсе не обязательно.
За загрузку/незагрузку гг при старте клиента отвечает переменная ?GL2UseGameGuard@@3HA в core.dll
Итак чтобы сделать киллгг надо:
1) petools
2) hex-редактор (winhex)
3) совсем немного мозгов
В PEtools открываем core.dll => тыкаем directories => export directory.
В списке function name ищем:?GL2UseGameGuard@@3HA, смотрим значение в поле offset. Это смещение в файле где находится эта переменная, для коре из инсталлятора T1(до CT2 по сути не менялось) оно равно 13F5B4(от компила к компилу плавает).
Теперь открываем core.dll хексредактором, переходим по этому адресу, видим там единичку, меняем ее на 0, сохраняем.
Гайд для томатов, буду более расширенные вопросы, дам более обширный ответ.
|
Ну вот тебе - более обширный вопрос:
Чтобы вывести переменную из функции(которая в Engine.dll/Core.dll) в L2.ini(или еще куда-то), достаточно отредактировать - найдя полный адрес функции(или каждой из переменных для нее), и вставить в конец L2_API название Переменной; При этом файл увеличиться - и потребуется удалить -ченибудь ненужное ! Таким образом можно это сделать ? Или надо именно в конец таблицы добавлять и увеличивать сам размер .dll'ки, если эт вообще возможно!
Ну и если это все фигня, то как это расширение сделать ?