Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Разработка
Войти через OpenID

Разработка Раздел для совместной разработки/доработки программы

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 13.01.2013, 13:54   #21
Пользователь
 
Регистрация: 27.10.2009
Сообщений: 63
Сказал Спасибо: 6
Имеет 21 спасибок в 19 сообщенях
Demion пока неопределено
По умолчанию

Собрал "на коленке" только что. Вроде все работает, клиента ла2 проверить нет. Путь нужно указывать полный ("C:\\Library.dll") либо длл должна находится в Working Directory приложения (обычно около самого приложения). А так вообще готовых решений и примеров полно в интернете. Тема не редкая.
http://pastebin.com/y6q88adp

Последний раз редактировалось Demion, 13.01.2013 в 13:56.
Demion вне форума   Ответить с цитированием
За это сообщение Demion нажился спасибкой от:
Старый 13.01.2013, 23:10   #22
Местный
 
Аватар для goodvin1709
 
Регистрация: 13.02.2011
Сообщений: 506
Сказал Спасибо: 121
Имеет 100 спасибок в 83 сообщенях
goodvin1709 пока неопределено
По умолчанию

Жаль что все исходники в С++ а не делфе( может делфи наброски будут?
__________________
---------------------------__--------__-----
---____- ___--____--- ___/'- /__ ___-(__)-____
--/-___-/-__-\/-__--\ /-__--'/--|-/--//---//--__--\
-/-/_/ -/-/_/--/-/_/--/-/_/--/|--|/--'//---//--/-/--/
-\___-/\____/\____/\____/-|____//__'//_'/-/__/
/_-__/
goodvin1709 вне форума   Ответить с цитированием
Старый 14.01.2013, 04:53   #23
Пользователь
 
Регистрация: 27.10.2009
Сообщений: 63
Сказал Спасибо: 6
Имеет 21 спасибок в 19 сообщенях
Demion пока неопределено
По умолчанию

Не сильно то отличается от сишного кода

http://pastebin.com/0b43ha6d
Demion вне форума   Ответить с цитированием
Старый 14.01.2013, 06:29   #24
Местный
 
Аватар для St1mul
 
Регистрация: 03.12.2011
Сообщений: 133
Сказал Спасибо: 63
Имеет 19 спасибок в 16 сообщенях
St1mul пока неопределено
По умолчанию

Еще один вопрос специалистам: как вы выковыриваете функции
Вот хоть убейте IDA не может найти UnetworkHandler::Say2
она как бы его видит и показывает в списках экспорта, но на месте которое указано какие то левые байты.
Я так предполагаю, что это из за TheMida компресии
Есть ли какие то особые настройки у гуру? или же плагины?
St1mul вне форума   Ответить с цитированием
Старый 14.01.2013, 06:40   #25
Пользователь
 
Регистрация: 27.10.2009
Сообщений: 63
Сказал Спасибо: 6
Имеет 21 спасибок в 19 сообщенях
Demion пока неопределено
По умолчанию

А что ты именно хочешь узнать? Параметры экспортируемой функции?
Demion вне форума   Ответить с цитированием
Старый 14.01.2013, 06:46   #26
Местный
 
Аватар для St1mul
 
Регистрация: 03.12.2011
Сообщений: 133
Сказал Спасибо: 63
Имеет 19 спасибок в 16 сообщенях
St1mul пока неопределено
По умолчанию

Цитата:
А что ты именно хочешь узнать? Параметры экспортируемой функции?
нет, я хочу узнать действия совершаемые этой функцией
параметры написаны в скобочках, че их искать
еще бы мне кто объяснил мне боту, как посмотреть древо вызовов: откуда могут совершать jmp и помещать в стек адрес начала функции
St1mul вне форума   Ответить с цитированием
Старый 14.01.2013, 07:16   #27
Пользователь
 
Регистрация: 27.10.2009
Сообщений: 63
Сказал Спасибо: 6
Имеет 21 спасибок в 19 сообщенях
Demion пока неопределено
По умолчанию

Я думал, что экспортные функции отображены в декорированном виде (?Foooo@@YAXXZ).

Адрес возврата лежит в стеке над параметрами (EBP + 4). Функции вызываются с помощью call, не jmp, если я правильно понял о чем речь.

Полагаю, чтобы работать с длл в дизассемблере, она должна быть распакована.
http://fyyre.ivory-tower.de/ - здесь можно поискать некоторые распакованные библиотеки некоторых хроник.
В принципе имплементация каких-то основных методов, может не меняться от хроник в хроники.
Demion вне форума   Ответить с цитированием
Старый 14.01.2013, 08:40   #28
Пользователь
 
Регистрация: 27.08.2010
Сообщений: 46
Сказал Спасибо: 6
Имеет 19 спасибок в 12 сообщенях
maxilam пока неопределено
По умолчанию

Цитата:
Сообщение от Demion Посмотреть сообщение
Я думал, что экспортные функции отображены в декорированном виде (?Foooo@@YAXXZ).
так и есть. но этого достаточно для работы с ними.
Код:
GetNextCreature_Original:= GetProcAddress(hMod,'?GetNextCreature@UNetworkHandler@@UAEPAUUser@@MH@Z');
все экспортируемые функции и их параметры можно посмотреть в IDAPro не снимая защиты с длл

Вкладка Exports в IDAPro
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 80
Размер:	120.8 Кб
ID:	2792
Сразу видно что в качестве параметра нужно передать указатель на L2ParamStack. А что там выполняется с ним дальше, для написания бота знать не обязательно

Вкладка IDA View-A, откуда и берем декорированое имя функции для импорта в нашу длл
Нажмите на изображение для увеличения
Название: 2.jpg
Просмотров: 75
Размер:	127.6 Кб
ID:	2793

Последний раз редактировалось maxilam, 14.01.2013 в 09:24.
maxilam вне форума   Ответить с цитированием
Старый 14.01.2013, 08:42   #29
Пользователь
 
Регистрация: 27.10.2009
Сообщений: 63
Сказал Спасибо: 6
Имеет 21 спасибок в 19 сообщенях
Demion пока неопределено
По умолчанию

Цитата:
Сообщение от maxilam Посмотреть сообщение
но этого достаточно для работы с ними.
И как ты узнаешь параметры функции не расшифровав декорированное название?

Кроме того их можно расшифровать с помощью винапи UnDecorateSymbolName или с помощью тулзы Microsoft C++ Name Undecorator (undname.exe), которая идет с Visual Studio.

Последний раз редактировалось Demion, 14.01.2013 в 09:00.
Demion вне форума   Ответить с цитированием
Старый 14.01.2013, 09:10   #30
Пользователь
 
Регистрация: 27.08.2010
Сообщений: 46
Сказал Спасибо: 6
Имеет 19 спасибок в 12 сообщенях
maxilam пока неопределено
По умолчанию

Цитата:
Сообщение от Demion Посмотреть сообщение
И как ты узнаешь параметры функции не расшифровав декорированное название?
Demion, дополнил ответом свой предыдущий пост
maxilam вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Разработка



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 20:33.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!