Вопрос Как обновить описание класса?

Начинающий
Статус
Оффлайн
Регистрация
29 Июн 2022
Сообщения
2
Реакции[?]
0
Поинты[?]
0
Мне нужно выполнить RunScript из CVScriptGameSystem для того чтобы сделать что-то типа
Код:
print(GetDedicatedServerKeyV2("dota_0"))
Для того чтобы сдампить скрипт кастомки, который использует следующий код:
Код:
local key = GetDedicatedServerKeyV2("dota_0")

GameRules.XDecrypt = function(code, ...)
    local text = string.fromhex(code)
    local plain = aeslua.decrypt(key, text, aeslua.AES128, aeslua.CBCMODE)
    return loadstring(plain)(...)
end
Нашел похожий вопрос: https://yougame.biz/threads/284483/
Обновил sig
Код:
Memory::Scan("48 8B 0D ?? ?? ?? ?? 44 0F B6 C3", "client.dll").GetAbsoluteAddress(3);
, взял описание класса
Пожалуйста, авторизуйтесь для просмотра ссылки.

Открыл reclass, вбил vtable и понял что описание устарело, функций больше, пустых sub (которые делают ret 0x0) больше, естественно изменился порядок
Как теперь найти правильные индексы RunScript-ов? Спасибо.
(А ещё есть ощущение, что GetDedicatedServerKeyV2 это функция которая выполняется на сервере и естественно даже запустив кастомку на локалхосте правильный ключ я не получу, но я могу ошибаться)
 
Shitcode lord 💩
Забаненный
Статус
Оффлайн
Регистрация
25 Ноя 2020
Сообщения
272
Реакции[?]
84
Поинты[?]
8K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
LWSS можно использовать разве что как подсказку -- там код сто лет как устаревший, плюс оно вообще под линукс.
Как теперь найти правильные индексы RunScript-ов?
Ну дык реверси, иначе никак. Открой длибы, найди нужную функу, ищи похожую в dll. Я реверсил это дело, там всё достаточно просто находится.
Но толку мало, щас все эти луашки полу-рабочие.
 
Участник
Статус
Оффлайн
Регистрация
23 Май 2019
Сообщения
774
Реакции[?]
330
Поинты[?]
62K
открой старые дллки/дилибы доты(если есть), найди там ранскрипт, посмотри кто его вызывает, или код самой функции, найди какое-нибудь красивое место с стринг хрефами например.
1701443185349.png
потом в актуальной версии просто находишь эти строки и всё.
например ищешь "Cannot run script", найдешь CEntityScriptFramework::RunScript, чекаешь хрефы к этой функе и находишь два джампа(две разных функи с джампами)
1701443468288.png
чекаешь хрефы к этим функам, если их нет значит это скорее всего виртуальные функи, значит ищешь указатели на эти функи в чит енджине(флаг Writable в чит енджине не забудь снять/игнорировать, виртуальные таблицы в ридонли памяти лежат)
потом берешь вмт свою у вскриптгеймсистем и смотришь какой оффсет у этих функций от вмт(т.е. какой у них индекс)
 
Новичок
Статус
Оффлайн
Регистрация
11 Апр 2021
Сообщения
1
Реакции[?]
0
Поинты[?]
0
Получилось в итоге?
GetDedicatedServerKeyV2 генерируется на официальных серверах Valve, как бы ты не копал сурсы клиента, тебе это не поможет, если запустить локальный сервер, то он тебе просто выдаст "Invalid_NotOnDedicatedServer"
 
Сверху Снизу