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.

CRC name? Or other algorithm

Featured Replies

  • Author
  • Localization

Xenon, posted Sat Dec 21, 2019 12:25 pm (52714)


Good afternoon. Faced a problem. In the archive, each file has an identifier - 4 bytes. How do I know the decryption algorithm for this identifier?

For example (in big endian)

23 77 cb 6f - directory.txt

d9 65 77 b7 - AUDIO/RELEASE/MENU/MENU.FEV

d9 65 79 55 - AUDIO/RELEASE/MENU/MENU.FSB

What is this algorithm that creates such short names?

P.S. Game - split/second. Game used lzss compression. separately for each file
  • Author
  • Localization

aluigi, posted Thu Mar 26, 2020 8:18 pm (55164)


quickbms has a script for scanning various crc algorithms but didn't find any result matching the crc and string you provided.
I tried using the following inputs:
AUDIO/RELEASE/MENU/MENU.FEV
AUDIO\RELEASE\MENU\MENU.FEV
audio/release/menu/menu.fev
audio\release\menu\menu.fev

It may be a different algorithm or a crc of the type instead of the filename, no idea.
  • Author
  • Localization

Delutto, posted Thu Mar 26, 2020 8:52 pm (55167)


Xenon wrote:
23 77 cb 6f - directory.txt
d9 65 77 b7 - AUDIO/RELEASE/MENU/MENU.FEV
d9 65 79 55 - AUDIO/RELEASE/MENU/MENU.FSB
How did you get those names?
  • Author
  • Localization

masterx244, posted Fri Jul 29, 2022 10:02 pm (72806)


not the guy who posted. Did some REing (used the Reloaded exe to bypass Securom's anti-debug) and
Code:
bp 0x571390 "ds esp 4;g"
in WinDBG spits out filename combined with the archive name. Was quicker for poking around than hooking a printf into that code.

When poking around with Ghidra and using a plugin for C parsing (they thankfully left RTTI data around) the entrance is in ArkLoader class. THats where that WinDBG breakpoint breaks and prints the value and immediately resumes.

Poking around the functions atm since the algorithm has to be near the function that handles file
  • Author
  • Localization

masterx244, posted Tue Aug 02, 2022 10:57 pm (72840)


Got some progress. Hash function iterates bytewise over the filename, then multiplies the "old" value of checksum with 31 and then add the new byte. Got 30% or so coverage of the ARK files so far and still missing some files where i should have the name for... (running the game with -noark and the name-extracted files at correct spot triggers a crash, filename of the failed file is known since i watch with process-monitor)
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.