Исправлю ошибку "LCID cannot run in this locale"

Frozenfrog

Прославленный
Местный
Старожил I степени
Сообщения
184
Розыгрыши
0
Решения
1
Репутация
23
Реакции
201
Баллы
1 408
Без использования региональных «костылей» и дополнительных обходных решений.
Любой протокол подключения — решу задачу быстро и по разумной цене 25$.

Связь только через личные сообщения.
 
что такого может содержать в себе l2bin чтобы это говно требовалось темидить?
Шифр клиентских файлов и инициализация(+ структура некоторых важных классов) это как минимум.
 
Шифр клиентских файлов и инициализация(+ структура некоторых важных классов) это как минимум.
выражу непопулярное мнение: всё, что находится на стороне клиента - ломается, вопрос только в заинтересованности. а это значит, что никакая темида не сможет защитить от любопытных глаз, зато добавит говна обычным пользователям (которым клиентские файлы и "структуры важных классов" в куй не упёрлись), у которых будут дополнительные проблемы в ходе эксплуатации игрового клиента

p.s. особенно умиляет, когда пытаются "привязать к себе" то, что украли у других (л2 как бы игрушечка нцсофта)
 
выражу непопулярное мнение: всё, что находится на стороне клиента - ломается, вопрос только в заинтересованности. а это значит, что никакая темида не сможет защитить от любопытных глаз, зато добавит говна обычным пользователям (которым клиентские файлы и "структуры важных классов" в куй не упёрлись), у которых будут дополнительные проблемы в ходе эксплуатации игрового клиента

p.s. особенно умиляет, когда пытаются "привязать к себе" то, что украли у других (л2 как бы игрушечка нцсофта)
И что ?
Может еще претензию напишешь, к Denuvo к примеру и игровым студиям которые хотят прибыль извлекать, из своего продукта . Если есть возможность получить даром, не важно какого состояния человек, он скорее всего воспользуется возможностью. По этому нужна защита.
P.S.
Арендуемые Велосипеды без защитного замка не предоставляются! (хоть это стоит на улице где никого нету и это можно "сломать" )
 
Теперь давайте еще гайд как снять темиду с l2.bin :D
Поставить xp/win7 на виртуалку, установить ollydbg, открыть l2.bin и запустить этот древний скрипт:
В скрипте написано что нужно настроить. Выполнить, забрать распакованный файл. Быстро, просто и бесплатно.
Из минусов: останутся уродские секции виртуального размера и файл будет большего размера, нежели оригинальный. И не будет релокаций. Из-за этого файл сможет запускаться только по одному и тому же адресу в памяти. Но для l2bin это не проблема, там в принципе нет релокаций и загрузка всегда по адресу 0x10900000. У engine.dll где-то с граций тоже нет релокаций.
Если хочется получить анпакнутый файл близкий к оригиналу, то будет сложнее. Если интересно, могу немного написать про это
 
Если интересно, могу немного написать про это
интересно
правда я не понимаю в чём смысл анпака, я ещё зеленый в этой теме, но гидрой уже в engine поковырялся, как буд то бы весь псевдокод читаем, да и патчить по байтам можно
в новых клиентах в основном всё в nwindow.dll делается
 
интересно
правда я не понимаю в чём смысл анпака, я ещё зеленый в этой теме, но гидрой уже в engine поковырялся, как буд то бы весь псевдокод читаем, да и патчить по байтам можно
в новых клиентах в основном всё в nwindow.dll делается
Псевдокод не всегда корректен, учитывай это. Иногда могут прятаться аргументы вызовов, или даже целая логика вызова.
Смысл анпака в том, чтобы ты мог прикрутить свой экстендер, и убрать бесполезную защиту, которая ухудшает производительность (любая защита ухудшает производительность), но не защищает, т.к. защита древнючая, и все обходится через шарные плагины для дебагеров

Ну и "взрослый" экстендер, если тебе нужно, например, расширить какую-то логику, то это не патчинг через байты, это хотя бы asm вставки, а еще лучше реализация полей класса и декомпил нужных тебе функций. Но тут уже намного больше жопоболи, нежели сделать asm вставку \ патч байтов. Да и в клиенте, чаще всего, последних двух хватает с головой
 
Да и в клиенте, чаще всего, последних двух хватает с головой
ну пока что для анлока некоторых штук мне вполне хватает) будет более глобальная цель - полезу разбираться)
 
интересно
правда я не понимаю в чём смысл анпака, я ещё зеленый в этой теме, но гидрой уже в engine поковырялся, как буд то бы весь псевдокод читаем, да и патчить по байтам можно
в новых клиентах в основном всё в nwindow.dll делается
Да. Особого смысла нет, если клиенты эпилог и выше. До эпилога старая версия темиды, которая не запускается на win10/11.

Темида разворачивает dll файл, вырезает импорт, экспорт, шифрует ресурсы.
1772467172498.webp
Все секции до ресурсов объединяются в одну безымянную секцию с raw размером равным виртуальному.
Я делал так: сначала анпак-скрипт, затем модулем scylla проверял импорты, исправлял/удалял лишнее, складывал импорты в отдельную компактную секцию. Далее брал чистый длл файл и начинал собирать.
Для этого я запускал оригинальную длл под дебагом, ставил брейкпоинт на начало секции. Ловил момент дешифрования dll файла. Далее дампил эту чистую безымянную секцию, делил ее на 3-4 части (text, rdata, data. в старых dll еще бывает idata).
1) text - тут удалены вызовы импорт-функций. Заменены на 6-7 nop инструкций. Я брал восстановленную анпак-скриптом text секцию, проверяя на ошибки (иногда могут быть неправильные сдвиги)
2) data - нужно просто урезать размер с виртуального до правильного raw. Искал последний не 0 байт, выравнивал, удалял остальные нулевые байты. Записывал raw/виртуальный размер. Кстати размер нужно фиксить всем секциям. Не забываем что после темиды они виртуального размера. Поэтому длл с темидой такая большая на диске.
3) rdata/idata - тут самое нудное. Нужно найти место где в оригинале начинались iat/экспорт таблицы. Сформировать новые таблицы, записать их, поправив все смещения. Я это делал своим скриптом.
Ресурсы можно взять после анпака-скрипта.
Если есть reloc, то можно просто поставить брейкпоинт перед исправлением релокаций темидой и вытащить из памяти расшифрованную reloc таблицу.

Затем создать новые секции, сложить их. В заголовке вписать правильные смещения и размер. Если все сделаете правильно, ваши новые секции в сумме будут иметь такой же виртуальный размер, как и старая безымянная секция.
1772468848463.webp

Возможно есть способы проще, но я их не нашел. Все гайды показывают простой анпак, без восстановления близко к оригиналу. Я просто смотрел как выглядят длл без темиды и возвращал к такой же структуре
 

Похожие темы

Назад
Сверху Снизу