IPB

Добро пожаловать, гость ( Вход | Регистрация )

История благодарностей участнику PavelDAS ::: Спасибо сказали: 15 раз(а)
Дата поста: В теме: За сообщение: Спасибо сказали:
Jun 25 2026, 06:48 AZZA Games Installer [*.EXE]
QUOTE(-=CHE@TER=- @ Jun 24 2026, 16:02) [snapback]4927[/snapback]

Чем комиплировал? У меня GCC 3.2:
gcc -Os -s -Wall -ansi -pedantic unpkazza.c -o unpkazza.exe C:\Dev-Cpp\lib\CRT_noglob.o
Предупреждение выкидывает по поводу mkdir(), но собирается и работает без проблем.
Я просто так задолбался с этими каталогами - в Windows они так создаются, в Linux эдак.
Кто-то выкладывает мой код в Интернете и переписывает под Linux это место, кто-то под Windows.
Я, как бы, и не против, но сделайте уже одним каким-нибудь способом, который везде пашет, и работайте с ним.
Я проверял - текущий способ должен работать под Linux и он у меня собирается и работает под Windows. Возможно, ключ "-ansi" важен для компиляции и работы.


CODE

-------------- Build: Release in AZZA Games Installer unpacker (compiler: GNU GCC MinGW Compiler)---------------

gcc.exe -Os -fno-exceptions -nostdlib -fno-builtin -IC:\mingw\include -c "D:\WorkCPP\AZZA Games Installer unpacker\depacks.c" -o obj\Release\depacks.o
gcc.exe -Os -fno-exceptions -nostdlib -fno-builtin -IC:\mingw\include -c "D:\WorkCPP\AZZA Games Installer unpacker\main.c" -o obj\Release\main.o
gcc.exe -LC:\mingw\lib -o "bin\Release\AZZA Games Installer unpacker.exe" obj\Release\depacks.o obj\Release\main.o  -s  
D:\WorkCPP\AZZA Games Installer unpacker\main.c: In function 'makedirs':
D:\WorkCPP\AZZA Games Installer unpacker\main.c:78:9: error: too many arguments to function 'mkdir'
   78 |         mkdir(path, 0755);
      |         ^~~~~
In file included from C:/MinGW/x86_64-w64-mingw32/include/sys/stat.h:14,
                 from D:\WorkCPP\AZZA Games Installer unpacker\main.c:6:
C:/MinGW/x86_64-w64-mingw32/include/io.h:282:15: note: declared here
  282 |   int __cdecl mkdir (const char *) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
      |               ^~~~~


Stack Overflow подсказал решение.

Более-менее рабочую среду удалось реализовать через Code::Blocks
В exe добавляются строки: GCC: (GNU) 13.2.0
-=CHE@TER=-,
Jun 23 2026, 14:11 Fantastic Media Autorun v2 (*.DAT)
QUOTE(-=CHE@TER=- @ Jun 23 2026, 12:55) [snapback]4922[/snapback]

Предположу, что 4 байта - это размер первого файла. Типа размер всего файла (item->size) минус эти 4 байта, вероятно, дадут размер второго файла.

Там размер-картинка + размер-картинка.
И картинки, зачем-то повторяются.
CODE
foreach ($arFileTable as $file) {
    fseek($f, $file['OFFSET'] + $fileDataOffset);
    if (str_contains($file['NAME'], '.jpg')) {
            if (file_exists($dir . '\\' . $file['NAME']))
                $file['NAME'] = str_replace('.jpg', '_v2.jpg', $file['NAME']);

            $sizePay1 = unpack('V', fread($f, 4))[1];  // размер картинки
            file_put_contents($dir . '\\' . $file['NAME'], fread($f, $sizePay1));

            $file['NAME'] = str_replace('.jpg', '_pay2.jpg', $file['NAME']);
            $sizePay2 = unpack('V', fread($f, 4))[1];  // размер картинки
            file_put_contents($dir . '\\' . $file['NAME'], fread($f, $sizePay2));
    }
    else
        file_put_contents($dir . '\\' . $file['NAME'], fread($f, $file['SIZE']));
}
-=CHE@TER=-,
May 20 2026, 18:53 Shrek SuperSlam [master.dat]
Да, работает


Письмо видел, но пока что не прочитывал, чтобы не потерять smile.gif
Добавить в этом месяце планирую.
-=CHE@TER=-,
May 12 2026, 06:43 Times of Conflict [.DAT]
QUOTE(-=CHE@TER=- @ May 11 2026, 16:34) [snapback]4906[/snapback]

Как же я не хотел это качать...
Обновил программу и добавил поддержку.


Теперь распаковывает всё. Спасибо.
-=CHE@TER=-,
May 11 2026, 14:13 Times of Conflict [.DAT]
QUOTE(-=CHE@TER=- @ May 10 2026, 18:12) [snapback]4904[/snapback]

Times of Conflict tools

Просьба протестировать и написать если всё нормально - я игру удалю, а то место занимает.

Триада и Век -- отлично.
Волк и Руссобит -- ошибка.

У Триады и Века картинки конвертируются.
BigTexInGame_Fonts.b16 немного странный, но, возможно, переводчики его так перерисовали

p.s. хостинг немного цвет исказил.
-=CHE@TER=-,
May 8 2026, 07:21 Times of Conflict [.DAT]
https://wdfiles.ru/folder/21295/Games_-_Times_of_Conflict
Версии от Руссобита + nocd, Века, 7-го волк.
+ патч
Работали разные проггеры, может что поможет. Патч собран таким же способом.
-=CHE@TER=-,
Dec 4 2025, 11:56 Activision Uninstaller расшифровка [*.LOG]
Спасибо. Адаптировал твою прогу от isu smile.gif
-=CHE@TER=-,
Nov 21 2025, 08:12 InstallShield расшифровка Uninst.isu
С этим файликом что-то не то...
https://wdfiles.ru/1uuy9
-=CHE@TER=-,
Nov 8 2025, 20:22 Multimedia Builder 4.5 [распаковка Petite+custom]
QUOTE(-=CHE@TER=- @ Nov 8 2025, 20:18) [snapback]4846[/snapback]

Если честно, не знаю что это за программы, но рад, что ты разобрался.
Если что, у нас тема отдельная по работе с отладчиком есть на форуме.
Кстати, а почему тему здесь в "Ресурсы" создал, а не в "Программы"?
Повторюсь, что это за программа не в курсе (никогда не сталкивался), но ошибка zlib говорит о том, что распаковщик то ли частичные данные видит (где-то что-то потеряно), то ли на начало упакованных данных не попадает и пытается распаковать что-то, что потоком zlib вообще не является.
Попробуй на файл программу stuns (есть у нас на форуме) натравить с опцией deflate, если там нет шифрования и ошибок не будет, то должно правильные смещения показать.

Мне надо достать из exe ресурс проекта smile.gif

Оказалось, что в оверлее есть флаг сжатия после версии, поставил его в 0x00 и Unbuilder выдал мне файл проекта... и он полностью повторяем оверлей... можно было просто его выдернуть, да переименовать в *.mbd smile.gif остальное оказалось лишнее.

Тему можно перенести или удалить.
-=CHE@TER=-,
Nov 8 2025, 19:59 Multimedia Builder 4.5 [распаковка Petite+custom]
Разобрался smile.gif
1) распаковать
2) к концу файла прикрутить оверлей.
все проверки проходит, меню показывает.

Вот только распаковщику проектов что-то не нравится...
-=CHE@TER=-,
Nov 6 2025, 17:41 InstallShield CAB View
QUOTE(-=CHE@TER=- @ Nov 6 2025, 16:22) [snapback]4841[/snapback]

Штатный ISCAB упоминающийся выше тоже не помог?

iscab пишет, что файл слишком стар для него.
другие распаковщики, как и плагин к FAR -- ошибку извлечения.
is6comp -- файл слишком новый smile.gif

решил по аналогии с wise пройтись по старым версиям.
is5 извлекал, то стопорился на повторном файле. Посмотрел, что он умеет, попробовал варианты. Через группы сработало.
-=CHE@TER=-,
Nov 5 2025, 18:28 Tonic Trouble [.CNT]
QUOTE(-=CHE@TER=- @ Nov 5 2025, 14:39) [snapback]4835[/snapback]

В этой игре почти все ресурсы зашифрованы.

Эти персонажи сами сожгли все мосты и варианты возможного сотрудничества в будущем (сами, всё сами, никто их насильно не заставлял).
В общем, прошу меня понять (и простить), но ничем с этими двумя играми я помогать не буду.
Возможно, кто-нибудь другой в теме откликнется и поможет.


Понял.
Существует один известный перевод на русский и издание нет видимых меток переводчиков. Иногда в ресурсах может что остаться... значит пока что останется загадкой. + они там что-то сломали и субтитры не выводятся.
-=CHE@TER=-,
Nov 3 2025, 07:47 Wise Installer (script.bin)
На текущий момент расшифровано большинство блоков и функций.
Итоговый файл выходит таким: https://file.com.ru/ymiWff40kX5hP8K/file
-=CHE@TER=-,
Oct 28 2025, 11:39 Wise Installer (script.bin)
QUOTE(-=CHE@TER=- @ Oct 28 2025, 10:19) [snapback]4828[/snapback]

О! Так вот какая конечная цель была. Надо было сразу про это написать.
Если честно, я сильно не уверен, что анализ установочных скриптов в этом поможет.
Потому что в любом установщике, например в том же InnoSetup, есть файлы-примеры и наверняка на их основе люди свои установщики и делали, а по тем различиям, которые есть, я сильно сомневаюсь, что можно установить авторство, если, разве что, сами пираты где-то в установщике свои копирайты не указали (вон как ты выше пример приводил с "COMPANY=%COMPANY%").
Но, чем чёрт не шутит - попробуй. Главное чтобы в итоге это не выглядело как натягивание совы на глобус, когда по каким-то крохам, которые могут быть в любом установщике, авторство приписывалось переводчикам, которые к тому переводу никакого отношения не имели. (*улыбается*)


Признаки есть.
DDeM использовал свой перевод в разных вариациях. Использовал переменную PUSTO. + Часто куча мусора от других сборов, где использовался oggdec, ...
NoF8 использовал переменные SHITGAME, SHITCOMP
EP использовали перевод на основе французского и немецкого (и он подписан).

Выискивать это в hex редакторах муторно, а будет перегнал в текст -- смотришь.

Расшифровка идёт успешно smile.gif


p.s. Расшифровка Uninst.isu очень упростила жизнь. Правда, не смог пока что собрать свою реализацию в exe smile.gif использую свою на php.
ранее: Песочница+шпион процессов+запуск удаления и анализ ошибок обращения..
теперь: запуск скрипта и анализ только нужных строк.

p.p.s. Вот такой документ составил по опознанию.
инфу про script.bin на 11 странице можно будет выкинуть / адаптировать.
https://wdfiles.ru/Otmn
На выходных встретил авторан с навешенных Petit, проги его не взяли, вручную не могу импорт восстановить, или ещё чего для запуска не хватает...
-=CHE@TER=-,

Упрощённая версия Сейчас: 26th July 2026 - 00:52