developer's log, g. ~8 A1 l: [
! i0 Z1 h" a; }" O% I8 o+ m6 w+ OAdded extraction support for "Wintermute Engine"-games, DCP-files (by request)
5 I; U) v: z( K9 C& w0 G3 k$ [This format uses XOR-encryption to hide the file names.7 B/ s/ R& |! L* v6 H% r
Notes:, u+ n5 G% n: w9 i. F% F% F
It was slightly difficult to find out what the XOR-encryption value for the file names is by "scanning" the EXE. After I found it the remains were an easy task.
q; {; a. B$ E3 GThe file has a known <name-size-offset> structure.- DE AD C0 DE "JUNK" ;Magic ("DEAD CODE:JUNK")
- 00 02 00 00 ;Version, if < 200h, then no XOR-filename-encryption is used
- ;here some useless commentaries up to offset 7fh
- Offset 80h:
- DWORD ;Offset file table
- <Offset file table>:
- BYTE length(descr) ;Length of (useless) DCP-file description string
- BYTEs descr ;String, variable length of length(descr) incl. 0
- BYTE 0 ;terminator
- DWORD ;Number of files
- File table entries:
- BYTE ;Length file name
- BYTEs ? ;File name; XOR-encrypted if version=200h; XOR-Value=44h
- DWORD ;Offset file
- DWORD ;Uncompressed data length
- DWORD ;Comressed data length (0, if uncompressed); compression=ZLIB
- DWORD 0
- DWORD CRC(?) ;Only present if version =200h
- DWORD 0 ;Only present if version =200h
复制代码
0 t6 p5 v) j; {% o* shttp://forum.xentax.com/viewtopi ... 0&sk=t&sd=a |