Для понимания принципов работы и дополнительных аспектов в вашей сфере, взял трупы утилит для анализа. И на основе L2crypt (acmi) пробую немного ковыряться.
Некоторые функции делались по наитию и находятся в тестовом режиме.
Для анализа были взяты L2ph/L2clientdat/
l2endec
В процессе l2emu netpro
LaPrizmo - современный инструмент для шифрования/дешифрования и анализа файлов игры Lineage 2. Проект представляет собой полностью переработанную версию утилиты L2Crypt с улучшенной структурой кода, расширенной функциональностью и поддержкой всех версий протоколов.
Основные возможности:
Поддержка всех версий от C1 (111) до Eternal (912)
Шифрование/дешифрование с авто-определением версии
Пакетная обработка файлов и директорий
Анализ сетевых пакетов и структуры DAT-файлов
Встроенный HEX-редактор
Расширяемость через систему плагинов
GUI и консольный режим
Системные требования:
Java 11 или выше
4 ГБ RAM (рек. 8 ГБ)
Windows/Linux/macOS
Компоненты:
Графический интерфейс
Консольный режим для автоматизации
Поддержка всех алгоритмов шифрования L2 (XOR, Blowfish, RSA, AES)
Инструменты анализа и отладки
Поддерживаемые форматы:
Все типы DAT-файлов
Сетевые пакеты всех версий
Системные файлы игры
Конфигурационные файлы
Функции:
Автоопределение версии протокола
Пакетная обработка файлов
Анализ структуры DAT-файлов
Извлечение текстур и моделей
Анализ сетевых пакетов
Встроенный HEX-редактор
Поддержка плагинов
Репозиторий
В репозитории присутствует подробнейшая документация по проекту.
P.S. Тестирование проводил бегло, могут быть ошибки и неточности. Буду рад вашим замечаниям, советам и предложениям. Если есть примеры op.src. проектов в подобном направлении был бы благодарен за наводку (язык не важен)