Skip to content

Instantly share code, notes, and snippets.

@RomanKharin
Last active August 29, 2015 13:59
Show Gist options
  • Save RomanKharin/10708677 to your computer and use it in GitHub Desktop.
Save RomanKharin/10708677 to your computer and use it in GitHub Desktop.

Модификация DCP_Unpacker.exe для запуска под WinXP

модификация

Программа с какой-то целю собрана в VC2012 и проставлена минимальная версия платформы для запуска 6.0 Поэтому правим файл

По адресу 0x3c расположен адрес заголовка PE (в данном случае 0xf8)

В заголовке по смещениям MajorOperatingSystemVersion 0x40 (0xf8 + 0x40 = 0x138) и MajorSubsystemVersion 0x48 (0xf8 + 0x48 = 0x140) меняем 0x06 на 0x05. Должно получиться 05 00 01 00 ...

Ставим VC_Redist VS2012 (иначе не найдёт msvcr110.dll).

альтернатива программе

QuickBMS http://quickbms.aluigi.org

скрипт для извлечения http://aluigi.altervista.org/papers/bms/wintermute.bms

# Wintermute Engine
# script for QuickBMS http://quickbms.aluigi.org

idstring "\xde\xad\xc0\xde"
goto 0x80
get OFFSET long
goto OFFSET

get NAMESZ byte
getdstring NAME NAMESZ
get DUMMY byte
get FILES long
for i = 0 < FILES
    get NAMESZ byte
    filexor 0x44
    getdstring NAME NAMESZ
    filexor ""
    get OFFSET long
    get SIZE long
    get ZSIZE long
    get DUMMY long
    get CRC long
    get DUMMY long
    if ZSIZE == 0
        log NAME OFFSET SIZE
    else
        clog NAME OFFSET ZSIZE SIZE
    endif
next i
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment