Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

MAD MAX (.arc/.tab) archives

Featured Replies

  • Replies 83
  • Views 31
  • Created
  • Last Reply

Top Posters In This Topic

  • Author
  • Localization

darkking647, posted Tue Sep 01, 2015 4:47 am (7075)


MAD MAX released today, and it seems to have same ".arc/.tab" format as in Just Cause 2.

When I used aluigi's Just Cause 2 bms script :-

Code:
http://aluigi.altervista.org/papers/bms/justcause2.bms


then it unpacked more than 12 GB data for a 500 MB file from the game, and moreover it was still unpacking, so I had to cancel it.

Can someone please check this game files and hopefully write bms script/repacker for it :- Samples below :-

Code:
https://www.dropbox.com/s/hn2aruw62dffexz/madarc.zip?dl=0


NOTE: the above zip file contains 20MB data cut using file cutter from a 500MB archive from MAD MAX, so if any problem occurs then I can also upload the 500 MB file.
  • Author
  • Localization

michalss, posted Tue Sep 01, 2015 9:28 am (7078)


i could write repacker, just dont have a time to check if data are same from JC2. If aluigi check it and make correct bms scriopt i can write repacker from it i guess. :D
  • Author
  • Localization

Ekey, posted Tue Sep 01, 2015 1:08 pm (7086)


Can some one make EXE dump? (for dump use Scylla x64 > Run Game, Run Scylla, Select process and dump it)
  • Author
  • Localization

spider91, posted Tue Sep 01, 2015 1:32 pm (7088)


i don't have a game, but it uses new version of denuvo, so don't think it's possible to get a key.
  • Author
  • Localization

Ekey, posted Tue Sep 01, 2015 1:35 pm (7089)


Anyway files not encrypted, just compressed > DEFLATE
  • Author
  • Localization

Ekey, posted Tue Sep 01, 2015 1:50 pm (7091)


See below
  • Author
  • Localization

michalss, posted Tue Sep 01, 2015 1:58 pm (7092)


looks easy, no filenames ? Im uploading dump be here in a few mins... also why did u use deflate_noerror Ekey ?

EXE dump:
Code:
https://mega.nz/#!qpR3hDRb!e8j21FQsnIaJTvnPAp5V45CDtr5NtESPnaJF2JRdByE
  • Author
  • Localization

Ekey, posted Tue Sep 01, 2015 3:15 pm (7094)


michalss wrote:
looks easy, no filenames ?
EXE dump:
Code:
https://mega.nz/#!qpR3hDRb!e8j21FQsnIaJTvnPAp5V45CDtr5NtESPnaJF2JRdByE

Yeah no names. Need to find hash algorithm. Also some tab's have different structure.
  • Author
  • Localization

michalss, posted Tue Sep 01, 2015 9:49 pm (7101)


found the texts, al in files with magic FDA all over the archives :(, not good
  • Author
  • Localization

Ekey, posted Tue Sep 01, 2015 10:19 pm (7102)


Well what we have

Code:
struct TABHeader
{
   uint32_t   dwAlign; //?
   uint32_t   dwUnknown; //? can be 0,1,2,3,4,5.... and etc
};


Code:
struct TABEntry
{
   uint32_t   dwHash; // (Lookup3) https://github.com/akheron/jansson/blob/master/src/lookup3.h
   uint32_t   dwOffset;
   uint32_t   dwZSize;
   uint32_t   dwSize;
};


See below
  • Author
  • Localization

Ekey, posted Tue Sep 01, 2015 11:09 pm (7105)


Ok, solved! :)

Code:
# Mad Max (ARC/TAB format) 0.0.2a
#
# Written by Ekey (h4x0r) / thx Haoose
#
# script for QuickBMS http://quickbms.aluigi.org

comtype deflate_noerror
open FDDE "tab" 0
open FDDE "arc" 1

get FILES asize
get ALIGN long
get ADDITIONAL long

if ADDITIONAL >= 0
for i = 0    get IHASH long
   get ITYPE long
   savepos ITEMP
   if ITYPE == 2
      math ITEMP = 16
   elif ITYPE == 3
      math ITEMP = 24
   elif ITYPE == 4
      math ITEMP = 32
   elif ITYPE == 5
      math ITEMP = 40
   else
      print "Unsupported type %ITYPE%"
     cleanexit
   endif
   goto ITEMP
next i

savepos CUROFFSET
math FILES -= CUROFFSET
math FILES /= 16

for i = 0    get HASH long   
   get OFFSET long
   get ZSIZE long
   get SIZE long
   string NAME p= "X" HASH
   if ZSIZE == SIZE
      log NAME OFFSET SIZE 1
   else
      clog NAME OFFSET ZSIZE SIZE 1
   endif
next i
  • Author
  • Localization

happyend, posted Wed Sep 02, 2015 1:29 am (7107)


thx,but,script not support game1.arc,game1.tab
  • Author
  • Localization

Ekey, posted Wed Sep 02, 2015 9:15 am (7114)


happyend wrote:
thx,but,script not support game1.arc,game1.tab

Updated script
  • Author
  • Localization

Ekey, posted Wed Sep 02, 2015 11:37 am (7116)


Hash found it's Lookup3. Some progress Image

Image
  • Author
  • Localization

michalss, posted Wed Sep 02, 2015 7:21 pm (7137)


Ekey gonna make also repacker or just unpacker? Just want to know coz if you do then i dont need to :)
  • Author
  • Localization

Ekey, posted Wed Sep 02, 2015 8:17 pm (7139)


michalss wrote:
Ekey gonna make also repacker or just unpacker? Just want to know coz if you do then i dont need to :)

If you known mechanics for dwUnknown which is greater than 0 (because I do not understand what this) it is i guess yes.
  • Author
  • Localization

ShadowEagle, posted Thu Sep 03, 2015 12:44 pm (7155)


Hi everyone,

i only found the script but not the unpacker with gui? Where to find?

How to repack these extracted files into the original files?

Thanks in advance and best regards
  • Author
  • Localization

Haoose, posted Thu Sep 03, 2015 8:03 pm (7163)


ShadowEagle wrote:
i only found the script but not the unpacker with gui? Where to find?

It is under development
  • Author
  • Localization

aluigi, posted Sat Sep 05, 2015 10:12 am (7195)


Just FYI, I have updated my justcause2 script to work with these archives and I replaced unzip_dynamic with deflate_noerror so now you can even try to reimport them.
That doesn't mean that it will reimport all the files because unzip_dynamic, zlib_noerror and deflate_noerror automatically compress every file, even those that weren't compressed in the original archive because I use only "clog" instead of "log" and "clog" due to some files in JC2.
  • Author
  • Localization

Ekey, posted Sat Sep 05, 2015 11:36 am (7198)


Don't works. Tested on game1.tab
  • Author
  • Localization

aluigi, posted Sat Sep 05, 2015 11:37 am (7199)


I tried the script with the sample provided and it worked.
Are there other samples available with which it doesn't work?
  • Author
  • Localization

Ekey, posted Sat Sep 05, 2015 11:46 am (7200)


Same with game31.

Image

Files with size 0 does not work correctly string NAME p= "x.%s" NAME_CRC EXT
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.