А может это не архивация (сжатие), а БД типа парадокса и фокса старого? Не помню я, что бы внутри сжатого архива оставались следы текста.14.03.06 21:13 Число просмотров: 1966 Автор: Garick <Yuriy> Статус: Elderman
Помогите понять метод архивации:
Есть программка на Borland C++, которая читает текстовые данные из заархивированных ресурсов. Сами ресурсы представляют собой двоичные файлы, в начале похоже длина данных, затем заархивированне данные. При этом при просмотре этих данных видишь куски исходных данных. Т.е. видны куски нормального текста между двоичным "мусором", при этом похоже вначале файла эти куски больше потом реже.
Пробовал анализировать это точно не ZLib, похоже не LZ.
Помогите разобраться данные очень нужны а исходников программы нет.
Спасибо за помощь
Есть предложение: Выкладывайте данные на фтп или файловую шару. Дальше посмотреть...:-)07.03.06 18:04 Автор: Garick <Yuriy> Статус: Elderman
А может это не архивация (сжатие), а БД типа парадокса и фокса старого? Не помню я, что бы внутри сжатого архива оставались следы текста.14.03.06 21:13 Автор: Garick <Yuriy> Статус: Elderman
Как раз очень похоже на сжатие каким-то простым алгоритмом.15.03.06 21:51 Автор: :-) <:-)> Статус: Elderman Отредактировано 15.03.06 21:57 Количество правок: 2
Как раз очень похоже на сжатие каким-то простым алгоритмом.
Пока нет последовательнсти повторяющихся бит, данные идут несжатыми.
Как только встречается последовательность бит, которая уже была раньше, она заменяется на смещение ранее встреченной от начала данных.
Например, почти с самого начала идет:
Абдул-Саттарова Лилия Рафаwовна
Несжатый текст, неверное будет Абдул-Саттарова Лилия Рафаиловна.
Т.е. второе вхождение "ил" замененно на байт "w", и в этом байте видимо закодировано смещение первого вхождения "ил".
может быть простая реализация какого-то алгоритма на основе LZ18.03.06 18:24 Автор: kr Статус: Незарегистрированный пользователь
> Как раз очень похоже на сжатие каким-то простым алгоритмом. > Пока нет последовательнсти повторяющихся бит, данные идут > несжатыми. Мне подсказали что это может быть простая реализация какого-то алгоритма на основе LZ, пробовал анализивароть код там нет чужих компонент, так что очевидно что был использован увуой-то простой в реализации алгоритм.
Осталось понять какой.
Более легкий способ -выдрать код распаковки и заюзать его в...09.03.06 17:18 Автор: :-) <:-)> Статус: Elderman
Более легкий способ -выдрать код распаковки и заюзать его в своей программе, либо пропатчить исходную программку так, чтобы распакованный буфер записывался на диск.
Выкладывайте .exe-шник, посмотрим.
В буфер... Проще уж сдампить весь процесс когда он распакует ЭТО. И по ключевым найти распакованный контент.09.03.06 18:22 Автор: Killer{R} <Dmitry> Статус: Elderman
> Сам не раз userdump'ом "вспоминал" неотправленные форумные > посты в IE:) Выкладывать в интернете полный экзешник слишком сложно. Он объемом более 15 Мегабайт, да и пропатчить что-то для меня тяжеловато. А вот вариант с дампом интересен. Я пробовал PETools, но он делал дамп только самого экзешника, распакованных данных я не увидел в дампе.
Может посоветуйте другую программу с которой можно сделать дамп. Как я понял смысл работы программы. Для данных резервируется область памяти Виндоус и потом туда распаковываются данные.
Подскажите какой программой лучше делать дамп этих областей.