Anno 2205

Extraction and unpacking of game archives and compression, encryption, obfuscation, decoding of unknown files
hsshss2005
Posts: 8
Joined: Tue Jul 26, 2016 9:17 am

Re: Anno 2205

Post by hsshss2005 »

aluigi wrote:@hsshss2005
I don't have the game so I need one of the archives (the "sample") to check what has been changed from the old format.
You can upload it on mega or sendspace or mediafire and so on.

but the pack is so big...I went to look for google..
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: Anno 2205

Post by AnonBaiter »

I bet you don't even know how to use filecutter.
Anyway, check if your quickbms app is the latest version.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

@hsshss2005
You can use this script to generate 2 small files to upload:
http://aluigi.org/bms/filecutter.bms
hsshss2005
Posts: 8
Joined: Tue Jul 26, 2016 9:17 am

Re: Anno 2205

Post by hsshss2005 »

aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

Yes it's right and the script works perfectly.
Be sure you are using the latest version of the script (0.1.2a) and quickbms (0.7.5)
hsshss2005
Posts: 8
Joined: Tue Jul 26, 2016 9:17 am

Re: Anno 2205

Post by hsshss2005 »

aluigi wrote:Yes it's right and the script works perfectly.
Be sure you are using the latest version of the script (0.1.2a) and quickbms (0.7.5)


not perfectly

i used 0.1.2a show many error

Error: incomplete input file -2:
Can't read 10320 bytes from offset 000000000000edc6.
Anyway don't worry, it's possible that the BMS script has been written
to exit in this way if it's reached the end of the archive so check it
or contact its author or verify that all the files have been extracted.
Please check the following coverage information to know if it's ok.

coverage file -2 83% 50550 60870

Last script line before the error or that produced the error:
103 log NAME OFFSET ZSIZE MEMORY_FILE2
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: Anno 2205

Post by AnonBaiter »

Is your quickbms.exe up to date?
hsshss2005
Posts: 8
Joined: Tue Jul 26, 2016 9:17 am

Re: Anno 2205

Post by hsshss2005 »

AnonBaiter wrote:Is your quickbms.exe up to date?

yes is 0.75
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

And the script you are using?
hsshss2005
Posts: 8
Joined: Tue Jul 26, 2016 9:17 am

Re: Anno 2205

Post by hsshss2005 »

aluigi wrote:And the script you are using?

yes i useing 0.1.2a

this bms only unpack 20%file
and my friend fix it now unpack 80% but other i don't know how to do


# Anno 2205 (script 0.1.3)
# script for QuickBMS http://quickbms.aluigi.org

quickbmsver "0.7.0"

getdstring SIGN 32
#print ("%SIGN%")
if SIGN & "Resource File V2.2"
goto 0x310
get FIRST_NEXT long
#print ("%FIRST_NEXT%")
math RES_FILE_TYPE = 2
#print ("SIGN=%SIGN%") #"RES_FILE_TYPE =2.2"
else
set SIGN unicode SIGN
if SIGN & "Resource File" # "Resource File V2.0"
math FIRST_NEXT = 0x404
math RES_FILE_TYPE = 1
else
print "Error: no magic signature found"
cleanexit
endif
endif

get FULLSIZE asize

for NEXT_OFF = FIRST_NEXT < FULLSIZE

goto NEXT_OFF
math OFFSET = NEXT_OFF

get TYPE long
get FILES long
#get CHEN long
#print "------For[0]TYPE=%TYPE% "

if RES_FILE_TYPE <= 1
get ZSIZE long
get SIZE long
get NEXT_OFF long
else

get ZSIZE longlong
get SIZE longlong
get NEXT_OFF longlong

endif
math OFFSET -= ZSIZE

savepos BACKUP_OFFSET

# type & 4 uses a compressed container
# instead of single compressed files

# MEMORY_FILE table of information
# MEMORY_FILE2 decompressed file system

if SIZE != 0
if TYPE & 4
math OFFSET -= 8
endif

# copy&paste except for the target file
callfunction SET_ENCRYPTION 1
if TYPE & 1
clog MEMORY_FILE OFFSET ZSIZE SIZE
else
log MEMORY_FILE OFFSET ZSIZE
endif
encryption "" ""

if TYPE & 4
math TMP = OFFSET
math TMP += ZSIZE
goto TMP
if RES_FILE_TYPE <= 1
get ZSIZE long
get SIZE long
else
get ZSIZE longlong
get SIZE longlong
endif
math OFFSET -= ZSIZE

callfunction SET_ENCRYPTION 1
if TYPE & 1
clog MEMORY_FILE2 OFFSET ZSIZE SIZE
else
log MEMORY_FILE2 OFFSET ZSIZE
endif
encryption "" ""
endif

for i = 0 < FILES
getdstring NAME 0x208 MEMORY_FILE
set NAME unicode NAME


if RES_FILE_TYPE <= 1
get OFFSET long MEMORY_FILE
get ZSIZE long MEMORY_FILE
get SIZE long MEMORY_FILE
get CRC long MEMORY_FILE
get ZERO long MEMORY_FILE
else
get OFFSET longlong MEMORY_FILE
get ZSIZE longlong MEMORY_FILE
get SIZE longlong MEMORY_FILE
get CRC long MEMORY_FILE
get ZERO long MEMORY_FILE
get ZERO long MEMORY_FILE
get ZERO long MEMORY_FILE
endif

if SIZE != 0
if TYPE & 4
log NAME OFFSET ZSIZE MEMORY_FILE2
else
callfunction SET_ENCRYPTION 1
if TYPE & 1
clog NAME OFFSET ZSIZE SIZE
else
log NAME OFFSET ZSIZE
endif
encryption "" ""
endif
endif
next i

goto BACKUP_OFFSET
endif

next

startfunction SET_ENCRYPTION
# Crypt "34AT9fdY33uT16m7" is used for signature in 2070
if TYPE & 2
#print "TYPE=2 and files=%FILES%"
if RES_FILE_TYPE >= 2
#print "2205 can Encrypte to do and files=%FILES%"
#encryption random "5 666666" 16 # not valid because needs >>16 on xor!
math KEY = 0x71C71C71
putvarchr MEMORY_FILE3 ZSIZE 0 short
log MEMORY_FILE3 0 0
math TMPSZ = ZSIZE
math TMPSZ / 2
math TMPSZ * 2
for x = 0 < TMPSZ
math KEY * 214013
math KEY + 2531011
math TMP = KEY
math TMP >> 16
math TMP & 0x7fff
putvarchr MEMORY_FILE3 x TMP short
next x + 2
putvarchr MEMORY_FILE3 x 0 short # padding
getdstring XOR_KEY ZSIZE MEMORY_FILE3 # wastes some memory
encryption xor XOR_KEY "" 0 ZSIZE

else

#encryption random "5 666666" 16 # not valid because needs >>16 on xor!
math KEY = 666666
putvarchr MEMORY_FILE3 ZSIZE 0 short
log MEMORY_FILE3 0 0
math TMPSZ = ZSIZE
math TMPSZ / 2
math TMPSZ * 2
for x = 0 < TMPSZ
math KEY * 0x000343fd
math KEY + 0x00269ec3
math TMP = KEY
math TMP >> 16
math TMP & 0x7fff
putvarchr MEMORY_FILE3 x TMP short
next x + 2
putvarchr MEMORY_FILE3 x 0 short # padding
getdstring XOR_KEY ZSIZE MEMORY_FILE3 # wastes some memory
encryption xor XOR_KEY "" 0 ZSIZE
endif
endif
endfunction
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

Without the full archive there is not much I can do.
Darkoxen
Posts: 2
Joined: Thu Jul 28, 2016 4:02 am

Re: Anno 2205

Post by Darkoxen »

aluigi wrote:Without the full archive there is not much I can do.


Hi, aluigi I will try to upload a Archive tonight can't you try some help to unpack it correctly?

Thanks :D
Darkoxen
Posts: 2
Joined: Thu Jul 28, 2016 4:02 am

Re: Anno 2205

Post by Darkoxen »

aluigi wrote:Without the full archive there is not much I can do.

https://mega.nz/#!KMokATRI!PLwAkCQH5ZNf ... LltbWBY5w0
https://mega.nz/#!OZZgnCaZ!11Vd-9t-BipD ... V0mMjiKjMk
Hi aluigi there are two archive from game, please have a check thanks!!!
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

The script worked perfectly with both the archives, 96% of coverage with data15.rda and 99% with data4.rda.

There are NO problems.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

So? Darkoxen? hsshss2005?
You said that something didn't work while everything works perfectly, can you tell me what was the problem?
komisar666
Posts: 5
Joined: Thu Dec 15, 2016 10:53 am

Re: Anno 2205

Post by komisar666 »

Hi
aluigi, any chance to unpack or extract encrypted files?
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

My script already handles the encryption so about what encrypted files are you referring?
komisar666
Posts: 5
Joined: Thu Dec 15, 2016 10:53 am

Re: Anno 2205

Post by komisar666 »

from data18.rda i see

Code: Select all

QuickBMS generic files extractor and reimporter 0.7.7
by Luigi Auriemma
e-mail: me@aluigi.org
web:    aluigi.org
        (Dec  3 2016 - 22:19:49)

                   quickbms.aluigi.org  Homepage
                            zenhax.com  ZenHAX Forum
                               @zenhax  Twitter & Scripts

- open input file C:\.video.cut.remuxes\data18.rda
- open script D:\temp\6\scr\anno5.bms
- set output folder .\data18.rda.dir

  offset   filesize   filename
--------------------------------------
Alert: Encrypted TYPE 2 not supported yet on V2, I continue with the other files

- 0 files found in 1 seconds
  coverage file 0    89%   2939556    3296760    . offset 00324df8
  coverage file -1  100%   560        560        . offset 00000230

RDAExplorer see 1 file and read 86 blocks (but 0 encrypted blocks skipped)
also RDA File Format
Link to data18.rda
P.S. Maybe encrypted files not process (not unencrypt) and extract as is? When reimport process all extracted files (i dont touch encrypted files but change others)

(sorry for my bad english)
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

Do you have the same error message also with other rda files?
That data18.rda contains absolutely no data to extract so who cares about it.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Anno 2205

Post by aluigi »

Script 0.1.3:
http://aluigi.org/bms/anno5.bms

There was 1 file archived :)