В игре ресурсы (текст, графика, звук) лежат в открытов виде, но зашифрованы. Файлы шифруются 1 к 1, т.е. размер не меняется, а в начале файла добавляются 8 байт, по всей видимости ключ. На руках есть только "eXtreme Repack" демо-версии с AG в которой лежит консольное приложение, которое шифрует файлы. В полной версии ресурсы хранятся точно также, только местами ключ другой, но двубайтовые переменные ключа в некоторых файлах просто перетасованы, но это как я понимаю значения абсолютно никакого не имеет.
Хотелось бы уместь расшифровывать ресурсы для их изменения.
Вот шифровщик: http://slil.ru/23204241
Если у кого есть какие идеи - пишите!
Посмотрел твой конвертер - весёлая штука.
Файл 1.TXT. Содержимое - один символ: A
Файл 2.TXT. Содержимое - один символ: A
На оба натравил твою тулзу - последний байт у выходных файлов различается.
Сначал подумал, что она как попало ключ генерит, а потому думаю - от чего я такой тупой? Если ключ как попало генерится, то как его тогда расшифровывать? Для эксперимента стёр файл 1.TXT и снова написал туда латинскую A. Результат тот же, что и в прошлый раз. Вывод: содержимое файла как-то шифруется на ключ. Ключ в данном случае - имя файла.
Сама тулза сжата UPX 1.9x, но у ней чего-то в заголовке покосили, так что распаковать не могу - так, возможно, бы больше сказал. Зато внизу, нашёл экспортируемые функции. Там была "CryptEncrypt".
Вот тут можно больше про неё почитать: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/seccrypto/security/cryptencrypt.asp.
Может тут используется тот же алгоритм, что и в прошлой игре:
http://wiki.xentax.com/index.php/Settlers_-_Heritage_Of_Kings (Tiny Encryption Algorithm (TEA))
?
Увы, я не знаю. Всё что я мог сказать - уже сказал. Вряд ли что-то ещё найду. Моих знаний тут нехватает.
Может кто-нибдь ещё хочет глянуть? Ещё у кого-нибудь какие-нибудь предположения есть?
Вообщем, я достал декриптор для демки, но на полной версии он не работает, т.к. ключ сменился, а декриптор смотрит первые 4 байта и отказывается файл конвертить. Также я выяснил, что алгоритм используется RC4 ключ там из заголовка и имени файла. Сейчас поищу инфу по алгоритму... если у кого-то есть что сказать или кто-то найдёт ценную инфу - в студию