Iwaihime 祝姫 (*.dat)

Extraction and unpacking of game archives and compression, encryption, obfuscation, decoding of unknown files
vntool
Posts: 8
Joined: Mon Jul 09, 2018 5:24 pm

Iwaihime 祝姫 (*.dat)

Post by vntool »

As far as the first extraction of sys.cpk, it showed these type of files.

000.dat - 007.dat, 009.dat, 008.pbo, 00a.dat, and 00b.dat

I want to find the script. But, it seems like they are encrypted because the .dat files are unreadable when I open it
Link : https://www69.zippyshare.com/v/SoePKNYb/file.html
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Iwaihime 祝姫 (*.dat)

Post by aluigi »

Just compressed with lzss:

Code: Select all

comtype lzss0
get SIZE long
savepos OFFSET
get ZSIZE asize
math ZSIZE - OFFSET
get NAME filename
clog NAME OFFSET ZSIZE SIZE

How did you extract these files?
Did you use one of my scripts and what of them?
vntool
Posts: 8
Joined: Mon Jul 09, 2018 5:24 pm

Re: Iwaihime 祝姫 (*.dat)

Post by vntool »

aluigi wrote:Just compressed with lzss:

Code: Select all

comtype lzss0
get SIZE long
savepos OFFSET
get ZSIZE asize
math ZSIZE - OFFSET
get NAME filename
clog NAME OFFSET ZSIZE SIZE

How did you extract these files?
Did you use one of my scripts and what of them?


Yes, I try with this > Cpk . CRI CPK archives (script 0.3.3) . cpk . CPK . TOC . ITOC . ETOC . @UTF . UTF_KEY

I try lzss but still can't open them. sorry bad english
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Iwaihime 祝姫 (*.dat)

Post by aluigi »

You can't "open" the decompressed file because it's not a known format and it's a mess anyway, for example 0000000b.dat is a nested archive where it contains 2 files that are archives themselve while 00000000.dat doesn't contain archives inside... so it's not possible to make an universal script.

For example this script will extract 2 files from 0000000b.dat even if there are other files inside the extracted files

Code: Select all

comtype lzss0
get SIZE long
savepos OFFSET
get ZSIZE asize
math ZSIZE - OFFSET
clog MEMORY_FILE OFFSET ZSIZE SIZE
math FILES = -1
for i = 0 != FILES
    get OFFSET long MEMORY_FILE
    if i == 0
        xmath FILES "OFFSET / 0x10"
    endif
    get SIZE long MEMORY_FILE
    getdstring ZERO 8 MEMORY_FILE
    math OFFSET + BASE_OFF
    log "" OFFSET SIZE MEMORY_FILE
next i

Long story short, don't waste time with this stuff.