детект oodle(kraken) потоков

Edison007

Ветеран
Модератор
детект oodle потоков

Не помню всех нюансов т.к последний раз что-то с проектом делал больше месяца назад, название еще не придумал.

Примерный алгоритм работы такой:
* Подгружаются рядом лежащие oodle-библиотеки (с именем oodleXXX_x64.dll, где XXX - версия).
* Ищутся валидные потоки, вышло сделать кое-какую валидацию.
* Приложение пытается разжать и сжать обратно найденный поток в памяти.
* Если всё нормально то выводится строка типа: смещение, размер, необходимая версия, размер > разжатый размер, уровень.

На данный момент детектится только kraken (ХЗ имеет ли смысл добавлять другие кодеки), поддерживаются крупные потоки (> 256кб). Не доделан детект потоков, у которых первый квант без сжатия. Скорость детекта оставляет желать лучшего.

Точно есть потоки в idtech (Wolfenstein 2), которые пережать не удаётся.

Примерный список игр:
* Wolfenstein 2
* FIFA 17
* Shadow of War
* Project CARS 2
* XCOM 2
* Injustice 2
* Batman: The Telltale Series * в данном случае контейнеры сначала нужно дешифровать.

юзать: ехе "входной_файл"

Дамп данных еще не сделан, только попытка детекта
 

Вложения

Edison007

Ветеран
Модератор
Если кто будет тестить и найдет кривые потоки, скидывайте (кроме IdTech, там я ХЗ как жали).
Так же буду благодарен, если кто-то найдет библиотеки недостающих версий.

http://www.radgametools.com/oodle.htm
 
Сверху