Как скомпилировать защиту FT-Guard (Dsetup.dll)

Url

CrazyCort

Знаток
Команда форума
Администратор
7 Апр 2017
677
100
108
Скачать исходник - https://cort-play.ru/resources/Исходники-защиты-ft-guard-dsetup-dll.74/
Для начала скачаем необходимый софт - Visual Studio 2010 Express Скачать можно тут- http://www.visualstudio.com/downloads/download-visual-studio-vs
Установим и запустим программу.
Откроем папку ClientSide в ней увидим файл dsetup.sln открываем его с помощью Visual C+++
Увидим такое
52a23cb939d9.jpg
Открываем файл dsetup
должно получится вот так
c9c7563ddfed.png
дальше выбираем папку Source Files в ней файл main.cpp 2 раза клик на него левой клавишей мышки получается такое
aa798a8bf99f.png
дальше мы ищем вот такие строки

PHP:
int __stdcall new_connect(SOCKET s, const struct sockaddr *name, int namelen)
{struct sockaddr_in *name_in = (struct sockaddr_in*) name;
if (name_in->sin_port == htons(2106))
{name_in->sin_port = htons(2106);name_in->sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
}

if (name_in->sin_port == htons(7777))
{name_in->sin_port = htons(7777);name_in->sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
}
return true_connect(s, name, namelen);
}
и вот такую строчку

PHP:
if (IcmpSendEcho(hIcmpFile, inet_addr("127.0.0.1"), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)lastPing = Reply.RoundTripTime;IcmpCloseHandle(hIcmpFile);
И где 127.0.0.1 изменяем на свой IP адрес.

дальше жмем на крестик
1986185dd25d.png
и теперь сохраняем нажав на ДА вот тут
47e358f6bd6f.png
дальше выполняем такие действия
254739040d8b.png
где у нас написано такое
по решения"dsetup" кликаем правой кнопкой мишки и жмем
Построить решения
после чего мы увидим внизу программы такое
127cfc6e7ed3.png
ВНИМАНИЯ ЕСЛИ У ВАС ВОЗНИКЛИ ТРУДНОСТИ И ПРИ КОМПИЛЕ ВЫБИВАЕТ ТАКОЕ.
640256891632.png
решения простое заходим по адресу ну у меня так C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin
ищем там файл cvtres и удаляем его с этой папки после чего у нас всё нормально скомпилет.

Когда скомпилировали фаил защиты dsetup заходим в папку ClientSide дальше в папку out и там лежит наш файл dsetup.dll
копируем его в нашу папку system с заменой.
На этом наш мануал закончен приятного вам компила.
 
Последнее редактирование:

Zili62

Новичок
Путник
25 Янв 2018
11
1
8
31
хотел бы добавить к вашемо посту , так как сам наткнулся на проблему с компилом различных Dsetup'ов , что при компиле выдавал ошибку
" fatal error LNK1123: сбой при преобразовании в COFF "

перерыл кучу страниц пока не наткнулся на одну где написано что надо всего лишь удалить cvtres.exe из папки microsoft visual studio/.....
это было у меня как на 2000 так и на 2017
 

CrazyCort

Знаток
Команда форума
Администратор
7 Апр 2017
677
100
108
хотел бы добавить к вашемо посту , так как сам наткнулся на проблему с компилом различных Dsetup'ов , что при компиле выдавал ошибку
" fatal error LNK1123: сбой при преобразовании в COFF "

перерыл кучу страниц пока не наткнулся на одну где написано что надо всего лишь удалить cvtres.exe из папки microsoft visual studio/.....
это было у меня как на 2000 так и на 2017
Вы обзор нажмите и там все увидите.
 

navrasses

Прохожий
Бета-Тестер
3 Мар 2018
34
17
23
31
А для того, чтобы dsetup откомпилить под эпилог, не подскажешь премудростей? ;) А то танцы с бубном у
unsigned int startVMT = (unsigned int) hEngine + 0x4E994C;
unsigned int AddNetworkQueue = (unsigned int) GetProcAddress(hEngine, "?DrawTextTTFToCanvas@UCanvas@@QAEHHHPBGPBVFontDrawInfo@@EHHPBV?$TArray@PAVFontDrawInfoSection@@@@@Z");
и разными engine.dll не приводят к успеху :confused:
Гугл даж не помогает. Всё, что находил, пробовал, но безуспешно.

Если лень всё объяснять или не знаешь, может хотяб dsetup.dll с engine.dll под эпилог завалялся, ну или вообще целиком патч эпиложный?
 

CrazyCort

Знаток
Команда форума
Администратор
7 Апр 2017
677
100
108
А для того, чтобы dsetup откомпилить под эпилог, не подскажешь премудростей? ;) А то танцы с бубном у
unsigned int startVMT = (unsigned int) hEngine + 0x4E994C;
unsigned int AddNetworkQueue = (unsigned int) GetProcAddress(hEngine, "?DrawTextTTFToCanvas@UCanvas@@QAEHHHPBGPBVFontDrawInfo@@EHHPBV?$TArray@PAVFontDrawInfoSection@@@@@Z");
и разными engine.dll не приводят к успеху :confused:
Гугл даж не помогает. Всё, что находил, пробовал, но безуспешно.

Если лень всё объяснять или не знаешь, может хотяб dsetup.dll с engine.dll под эпилог завалялся, ну или вообще целиком патч эпиложный?
Что не так у вас?Брали исходники у нас?
 

navrasses

Прохожий
Бета-Тестер
3 Мар 2018
34
17
23
31
Всё сделал по фен шую как сказано в гайде твоем, за исключением того, что по всей видимости у меня эпилог, а исходники то под HF. Поэтому при запуске l2.exe промигивает в трее ГГ, а далее ничего не происходит. Появляется текстовый файл в папке system, Guard.log и в нём логи ошибок "Set Hooks Fail!". Покопавшись в интернете пришел к выводу что мой dsetup.dll не подходит к эпилоговскому engine.dll. пробовал делать разные смещения и адресы, танцевал с бубном как мог, но... Очень нужна помощь, ну или альтернатива гуарду этому.
 

CrazyCort

Знаток
Команда форума
Администратор
7 Апр 2017
677
100
108
Всё сделал по фен шую как сказано в гайде твоем, за исключением того, что по всей видимости у меня эпилог, а исходники то под HF. Поэтому при запуске l2.exe промигивает в трее ГГ, а далее ничего не происходит. Появляется текстовый файл в папке system, Guard.log и в нём логи ошибок "Set Hooks Fail!". Покопавшись в интернете пришел к выводу что мой dsetup.dll не подходит к эпилоговскому engine.dll. пробовал делать разные смещения и адресы, танцевал с бубном как мог, но... Очень нужна помощь, ну или альтернатива гуарду этому.
Тогда только переписать что бы совпадал ключ с епилогом.
Либо взять готовый патч епилога декомпилировать dsetup.dll и изменить на свои порт и аипи.
 

navrasses

Прохожий
Бета-Тестер
3 Мар 2018
34
17
23
31
Тогда только переписать что бы совпадал ключ с епилогом.
Либо взять готовый патч епилога декомпилировать dsetup.dll и изменить на свои порт и аипи.

По сути я за этим и обращаюсь :) Мне бы готовый патч эпиложный с интегрированным ft-guard'ом. Ну или совет как именно нужно переписать ключ в исходниках ft-guard'а для эпилога чтобы откомпилировать и работало.
 

CrazyCort

Знаток
Команда форума
Администратор
7 Апр 2017
677
100
108
По сути я за этим и обращаюсь :) Мне бы готовый патч эпиложный с интегрированным ft-guard'ом. Ну или совет как именно нужно переписать ключ в исходниках ft-guard'а для эпилога чтобы откомпилировать и работало.
Попробуйте изменить строчку main.cpp
unsigned int startVMT = (unsigned int) hEngine + 0x51F658;
на
unsigned int startVMT = (unsigned int) hEngine + 0x4EA94C;
 

CrazyCort

Знаток
Команда форума
Администратор
7 Апр 2017
677
100
108
enigne.dll с епилога? Эти сурсы давно не актуальные.
 

HellFire

-=F.Hell-In.Hell=-
Команда форума
Гл. Модератор
11 Окт 2017
343
83
83
Эх, не получилось. Видать не судьба. Излазал везде всё в поисках ft-guard для эпилога готового, но безуспешно.
Не играю на эпилоге, но думаю проблемка в engine.dll он тут играет основную роль или же dsetup.dll
 

navrasses

Прохожий
Бета-Тестер
3 Мар 2018
34
17
23
31
unsigned int startVMT = (unsigned int) hEngine + 0x4E994C;
Пробуй
Я так понял там помимо вот этой прибавки (0x4E994C\0x51F658) ещё надо что-то менять.
unsigned int AddNetworkQueue = (unsigned int) GetProcAddress(hEngine, "?DrawTextTTFToCanvas@UCanvas@@QAEHHHPBGPBVFontDrawInfo@@EHHPBV?$TArray@PAVFontDrawInfoSection@@@@@Z");
 

HellFire

-=F.Hell-In.Hell=-
Команда форума
Гл. Модератор
11 Окт 2017
343
83
83
Я так понял там помимо вот этой прибавки (0x4E994C\0x51F658) ещё надо что-то менять.
unsigned int AddNetworkQueue = (unsigned int) GetProcAddress(hEngine, "?DrawTextTTFToCanvas@UCanvas@@QAEHHHPBGPBVFontDrawInfo@@EHHPBV?$TArray@PAVFontDrawInfoSection@@@@@Z");
По сути тут всё верно
 

HellFire

-=F.Hell-In.Hell=-
Команда форума
Гл. Модератор
11 Окт 2017
343
83
83
Я уже и руоффовский грация плюс Engine.dll тестил, и дефолтный евроофф, и чистый 152 протокола откопал где-то.

unsigned int startVMT = (unsigned int) hEngine + 0x4E994C;

if ((addr = GetProcAddress(hEngine, "?DrawTextTTFToCanvas@UCanvas@@QAEHHHPBGPBVFontDrawInfo@@EHHPBV?$TArray@PAVFontDrawInfoSection@@@@@Z")) == 0)
return false;

Последний мой вариант не трогая engine.dll но я склоняюсь к тому что всё таки нужен другой
 

navrasses

Прохожий
Бета-Тестер
3 Мар 2018
34
17
23
31
unsigned int startVMT = (unsigned int) hEngine + 0x4E994C;

if ((addr = GetProcAddress(hEngine, "?DrawTextTTFToCanvas@UCanvas@@QAEHHHPBGPBVFontDrawInfo@@EHHPBV?$TArray@PAVFontDrawInfoSection@@@@@Z")) == 0)
return false;

Последний мой вариант не трогая engine.dll но я склоняюсь к тому что всё таки нужен другой

error C2065: 'addr' : undeclared identifier