0

First, full disclosure: I'm very new to coding and very new to file dissecting, but its something I anticipate studying in school very soon, so please pardon my ignorance in future interactions.

As a project I've decided to dissect the files of a mobile app I greatly enjoy. This app is Futurama: Worlds of Tomorrow. I'm a big fan of the cartoon, even spent money on the stuff, so I figured it was natural for me to pick.

Extracting the .apk file was easy, I found some of the assets they use in the game, like the music, the soundbytes, and some .pngs. All simple stuff.

However there are two files I'm absolutely baffled by: files with an .astc.czz extension and an .ita file that is not an italian read me file, the developers informed me that those are animation files.

Allow me to go into what I know and what I don't know:

Filename.astc.czz

Example file here I recognize .astc as a compression file and was informed that .astc files are common for mobile games. Fair enough, but the real extension is .czz, the "real" extension of the file leads me to dead end. I've found the ASTC Evaluation Codec by ARM-Software on github so I tried that. I changed the extension to .astc and then tried keeping .czz but the codec gives me an error every time. This is where I show my ignorance, I didn't know the right way to do this so I'm showing you every combination of what I tried. I replaced my name with user.

C:\Users\user\Downloads\astc-encoder-master\Binary\Win32
λ astcenc -d C:\Users\user\Downloads\astc-encoder-master\Binary\Win32\AC0001-dialogue1-003@2x.astc C:\Users\user\Downloads\astc-encoder-master\Binary\Win32\AC0001-dialogue1-003@2x.tga
File C:\Users\user\Downloads\astc-encoder-master\Binary\Win32\AC0001-dialogue1-003@2x.astc not recognized

C:\Users\user\Downloads\astc-encoder-master\Binary\Win32
λ astcenc -d AC0001-dialogue1-003@2x.astc AC0001-dialogue1-003@2x.tga
File AC0001-dialogue1-003@2x.astc not recognized

C:\Users\user\Downloads\astc-encoder-master\Binary\Win32
λ astcenc -d C:\Users\user\Downloads\astc-encoder-master\Binary\Win32\AC0001-dialogue1-003@2x.astc.czz C:\Users\user\Downloads\astc-encoder-master\Binary\Win32\AC0001-dialogue1-003@2x.tga
Failed to open file C:\Users\user\Downloads\astc-encoder-master\Binary\Win32\AC0001-dialogue1-003@2x.astc.czz

C:\Users\user\Downloads\astc-encoder-master\Binary\Win32
λ astcenc -d AC0001-dialogue1-003@2x.astc.czz AC0001-dialogue1-003@2x.tga
Failed to open file AC0001-dialogue1-003@2x.astc.czz

No success there.

So then I learned that .CZZ files are apparently associated with visECAD Viewer and I downloaded that and the .astc.czz files became associated with the program. I tried opening them but visECAD says it cant open them because they are "outdated." So that's another dead end.

Right, so that's all I know.

Filename.ita

Example file here Out of curiosity I've actually emailed the developers about this file (and the astc ones too) and they said those are the animation of the game. They couldn't send me a viewer, which is perfectly fine, but I don't even know what .ita files are associated with that aren't italian read me's. Any insight would be appreciated, the animations are great and I would love to see them.

For full disclosure here are snippets of what the developers sent me:

Those strange file types are actually compressed files (like ".astc.ccz"). Different devices use different compression methods, so we support many types to maintain low storage and memory usage. Some devices don't use compression and just use .png versions of the same file names.

The .lta files are the game's animations. I wish I could help you out with viewing them, but there's no way for me to send you a viewer. :(

Well that's all folks, sorry it was so long, and thank you so much in advance. I'm grateful already!

Has QUIT--Anony-Mousse
  • 76,138
  • 12
  • 138
  • 194
Ruby
  • 9
  • 3
  • It's probably a *proprietary* format. Try the Unix `file` command, which can identify many file types (and which isn't fooled by a file name). – Has QUIT--Anony-Mousse Aug 09 '17 at 19:36
  • @Anony-Mousse Thanks for the reply! I did as you said and Terminal gave me this: `ubuntu@ubuntu:~/Downloads$ file BR1.astc.ccz -b data ubuntu@ubuntu:~/Downloads$ file BR1.astc.ccz BR1.astc.ccz: data ubuntu@ubuntu:~/Downloads$ file BR1.astc.ccz -i -b application/octet-stream; charset=binary ubuntu@ubuntu:~/Downloads$ file BR1.astc.ccz -z BR1.astc.ccz: data ubuntu@ubuntu:~/Downloads$ file -z BR1.astc.ccz BR1.astc.ccz: data` I don't really know where to go from there. – Ruby Aug 10 '17 at 03:26
  • If it just says "data" then it is not one of the sell-known formats. `file` would recognize e.g. a PNG even with a bad extension. – Has QUIT--Anony-Mousse Aug 10 '17 at 06:11
  • Does that mean I'm SOL? haha I don't know how to move on from here! Thank you for your help so far by the way, I'm learning a lot. – Ruby Aug 10 '17 at 22:46
  • Check out https://reverseengineering.stackexchange.com/ for all your RE needs – julian Aug 12 '17 at 22:29

1 Answers1

1

I realise this is a few months old, but in case you're still interested, I've just cracked it. Basically, it's a compressed texture, the ccz part being the compression, and the astc being the texture format. I managed to decompress the file using QuickBMS (http://aluigi.altervista.org/quickbms.htm), using the following script for ccz files (copy the following into a txt file):


endian big

comtype zlib_dynamic

get ZSIZE asize

math ZSIZE - 0x10

get NAME basename

idstring "\x43\x43\x5a\x21"

goto 0xc

get SIZE long

clog NAME 0x10 ZSIZE SIZE


On running QuickBMS, it will first ask for a script, upon which point it to your new txt file. Then it will ask for the file you want to decompress, point it at your ccz file. Then it will ask where you want to save your astc file.

Now you will need a program that can open astc files! I used this one, Noesis: http://www.richwhitehouse.com/index.php?content=inc_projects.php&showproject=91

Find your astc file (the interface is quite straightforward), then from there you can double click the file to open it, then right-click and export to a variety of formats. For proof of concept, here is the extracted pf0001-action5-001@4xout (PF being Philip Fry I assume). https://www.dropbox.com/s/t2l3mesi2psbd1p/pf0001-action5-001%404xout.png?dl=0

Both programs allow for batch processing as well, so you should have everything you need! However, the lta files are skeletal animation I believe, so unfortunately the character animations are all in pieces. However, I'm looking into that next. Hope this helps!

EDIT: The above information is useful for your specific query, i.e. decompressing and reading the contents of those files. HOWEVER, if your end goal is to view the assets of the game, it's worth knowing that many of the assets are only downloaded AFTER the game is run, so looking in the "com.tinyco.futurama" on your Android voice will show all kinds of assets not present in the apk file. Many of them will be ready-extracted as well, being made ready for gameplay, so I would highly recommend copying the contents of this folder periodically. I think it re-compresses unused assets as well, so I would copy out the ccz files also, then either way you should reap the maximum benefits.

  • Wow, thanks for looking into this! I'm absolutely still interested. I'm going to attempt this as soon as possible, thank you so much for your time! – Ruby Feb 20 '18 at 21:48
  • Hi again, added an edit regarding an easier way of getting to even more of the assets, as it seems to download most of them as you play. The only thing I'm struggling with is the animation files. They contain recognisable strings referring to the names of specific animations, so I know they're not encrypted/compressed, I just need to find how to open them! Will keep you posted. – Jackson Matthews Feb 26 '18 at 12:32