ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Как сделать Автологин Интерлюдия? (https://forum.antichat.xyz/showthread.php?t=793142)

BIT_hack 01.11.2024 16:23

Charmant​Ваш кодс работал для IT

Charmant 01.11.2024 16:24

Цитата:

Сообщение от BIT_hack

В первом случае как вы написали ничего не происходит во втором игра начинает тормозить.
Насчет dll я ее инжектю когда игра уже запущена.

Ну вот судя по этому скрину, если базовый адрес енжины 20000000, то смещение UNH для этой енжины равно 0x77ed80

BIT_hack 01.11.2024 16:29

Цитата:

Сообщение от Charmant

Ну вот судя по этому скрину, если базовый адрес енжины 20000000, то смещение UNH для этой енжины равно 0x77ed80

Спасибо чуть позже отпишу нужно ехать срочно!

Maksim 01.11.2024 16:48

Я правильно понял, можно сделать так без привязки к оффсету?

Цитата:

Сообщение от Спойлер


C++:


Код:

#include "pch.h"
#include "string"
class
UNetworkHandler
{
}
;
// Объявление типа для функции RequestAuthLogin
typedef
int
(
__fastcall
*
RequestAuthLogin_fn
)
(
UNetworkHandler
*
,
int
,
const
wchar_t
*
,
const
wchar_t
*
,
int
)
;
// Объявление типа для функции InternalConstructor
typedef
void
(
__stdcall
*
InternalConstructor_fn
)
(
void
*
)
;
// Объявление функции RequestLogin
void
RequestLogin
(
const
wchar_t
*
login
,
const
wchar_t
*
password
)
;
namespace
{
uintptr_t UNetworkOffset
=
0
;
// Смещение не используется
UNetworkHandler
*
UNetwork
=
nullptr
;
RequestAuthLogin_fn fRequestAuthLogin
=
nullptr
;
InternalConstructor_fn fInternalConstructor
=
nullptr
;
}
void
Init
(
)
{
HMODULE hEngineModule
=
GetModuleHandleW
(
L
"engine.dll"
)
;
if
(
hEngineModule
!=
nullptr
)
{
// Получаем адрес функции InternalConstructor
fInternalConstructor
=
(
InternalConstructor_fn
)
GetProcAddress
(
hEngineModule
,
"?InternalConstructor@UNetworkHandler@@SAXPAX@Z"
)
;
if
(
fInternalConstructor
!=
nullptr
)
{
// Вызов функции InternalConstructor для инициализации UNetwork, если нужно
fInternalConstructor
(
&
UNetwork
)
;
// Проверка на успешное извлечение UNetwork
if
(
UNetwork
!=
nullptr
)
{
MessageBox
(
NULL
,
L
"Все данные собраны вход!!!!!"
,
L
""
,
MB_OK
)
;
// Получаем адрес функции RequestAuthLogin
fRequestAuthLogin
=
(
RequestAuthLogin_fn
)
GetProcAddress
(
hEngineModule
,
"?RequestAuthLogin@UNetworkHandler@@UAEHPAG0H@Z"
)
;
// Попытка авторизации
RequestLogin
(
L
"admin"
,
L
"admin"
)
;
}
}
}
}
void
RequestLogin
(
const
wchar_t
*
login
,
const
wchar_t
*
password
)
{
if
(
UNetwork
!=
nullptr
&&
fRequestAuthLogin
!=
nullptr
)
{
MessageBox
(
NULL
,
L
"Попытка входа в игру!"
,
L
""
,
MB_OK
)
;
fRequestAuthLogin
(
UNetwork
,
0
,
login
,
password
,
0
)
;
}
}
DWORD WINAPI
test
(
LPVOID lpParameter
)
{
Sleep
(
7000
)
;
Init
(
)
;
return
0
;
}
BOOL APIENTRY
DllMain
(
HMODULE hModule
,
DWORD  ul_reason_for_call
,
LPVOID lpReserved
)
{
switch
(
ul_reason_for_call
)
{
case
DLL_PROCESS_ATTACH
:
DisableThreadLibraryCalls
(
hModule
)
;
{
HANDLE hThread
=
CreateThread
(
NULL
,
0
,
test
,
NULL
,
0
,
NULL
)
;
if
(
hThread
!=
NULL
)
{
CloseHandle
(
hThread
)
;
}
}
break
;
}
return
TRUE
;
}



Charmant 01.11.2024 17:16

Цитата:

Сообщение от Maksim

Я правильно понял, можно сделать так без привязки к оффсету?
Цитата:

Сообщение от Спойлер


C++:


Код:

#include "pch.h"
#include "string"
class
UNetworkHandler
{
}
;
// Объявление типа для функции RequestAuthLogin
typedef
int
(
__fastcall
*
RequestAuthLogin_fn
)
(
UNetworkHandler
*
,
int
,
const
wchar_t
*
,
const
wchar_t
*
,
int
)
;
// Объявление типа для функции InternalConstructor
typedef
void
(
__stdcall
*
InternalConstructor_fn
)
(
void
*
)
;
// Объявление функции RequestLogin
void
RequestLogin
(
const
wchar_t
*
login
,
const
wchar_t
*
password
)
;
namespace
{
uintptr_t UNetworkOffset
=
0
;
// Смещение не используется
UNetworkHandler
*
UNetwork
=
nullptr
;
RequestAuthLogin_fn fRequestAuthLogin
=
nullptr
;
InternalConstructor_fn fInternalConstructor
=
nullptr
;
}
void
Init
(
)
{
HMODULE hEngineModule
=
GetModuleHandleW
(
L
"engine.dll"
)
;
if
(
hEngineModule
!=
nullptr
)
{
// Получаем адрес функции InternalConstructor
fInternalConstructor
=
(
InternalConstructor_fn
)
GetProcAddress
(
hEngineModule
,
"?InternalConstructor@UNetworkHandler@@SAXPAX@Z"
)
;
if
(
fInternalConstructor
!=
nullptr
)
{
// Вызов функции InternalConstructor для инициализации UNetwork, если нужно
fInternalConstructor
(
&
UNetwork
)
;
// Проверка на успешное извлечение UNetwork
if
(
UNetwork
!=
nullptr
)
{
MessageBox
(
NULL
,
L
"Все данные собраны вход!!!!!"
,
L
""
,
MB_OK
)
;
// Получаем адрес функции RequestAuthLogin
fRequestAuthLogin
=
(
RequestAuthLogin_fn
)
GetProcAddress
(
hEngineModule
,
"?RequestAuthLogin@UNetworkHandler@@UAEHPAG0H@Z"
)
;
// Попытка авторизации
RequestLogin
(
L
"admin"
,
L
"admin"
)
;
}
}
}
}
void
RequestLogin
(
const
wchar_t
*
login
,
const
wchar_t
*
password
)
{
if
(
UNetwork
!=
nullptr
&&
fRequestAuthLogin
!=
nullptr
)
{
MessageBox
(
NULL
,
L
"Попытка входа в игру!"
,
L
""
,
MB_OK
)
;
fRequestAuthLogin
(
UNetwork
,
0
,
login
,
password
,
0
)
;
}
}
DWORD WINAPI
test
(
LPVOID lpParameter
)
{
Sleep
(
7000
)
;
Init
(
)
;
return
0
;
}
BOOL APIENTRY
DllMain
(
HMODULE hModule
,
DWORD  ul_reason_for_call
,
LPVOID lpReserved
)
{
switch
(
ul_reason_for_call
)
{
case
DLL_PROCESS_ATTACH
:
DisableThreadLibraryCalls
(
hModule
)
;
{
HANDLE hThread
=
CreateThread
(
NULL
,
0
,
test
,
NULL
,
0
,
NULL
)
;
if
(
hThread
!=
NULL
)
{
CloseHandle
(
hThread
)
;
}
}
break
;
}
return
TRUE
;
}



Не думаю что так сработает. Вроде смысл в том чтобы перехватывать вызов InternalConstructor и забирать значение UNH, а не самостоятельный вызов этой фунции.

Maksim 01.11.2024 17:21

Цитата:

Сообщение от Charmant

Не думаю что так сработает. Вроде смысл в том чтобы перехватывать вызов InternalConstructor и забирать значение UNH, а не самостоятельный вызов этой фунции.

Было бы универсальное решение без поиска оффсета, но вроде в верном направлении.

Где-то упускаю ?

PalevoPWNZ 01.11.2024 17:32

Цитата:

Сообщение от Спойлер

Если сделаете для ИТ готов приобрести.


Maksim 01.11.2024 17:38

Цитата:

Сообщение от PalevoPWNZ

Цитата:

Сообщение от Спойлер

Если сделаете для ИТ готов приобрести.


Так уже, тут вопрос в другом ?

BIT_hack 01.11.2024 19:10

Цитата:

Сообщение от Maksim

Так уже, тут вопрос в другом ?

В интерлюдия не нашел такой функции ?InternalConstructor@UNetworkHandler@@SAXPAX@Z

Maksim 01.11.2024 19:16

Цитата:

Сообщение от BIT_hack

В интерлюдия не нашел такой функции ?InternalConstructor@UNetworkHandler@@SAXPAX@Z

Это было взято с публичного поста, на работе не могу посмотреть и проверить.

Если поискать только так должно найти:

Код:


Код:

InternalConstructor@UNetworkHandler


Время: 23:03