Files
gtav-src/tools_ng/script/coding/mod/arxDump/arxDump.HOWTO.txt
T
2025-09-29 00:52:08 +02:00

73 lines
4.0 KiB
Plaintext
Executable File

============
New Text
=============
arxDump "<path_1>;<path_2>;...<path_n-1>;<path_n>"
The paths should contain:
1) PDB File
2) Map File
3) ArxInstMap file
4) Dump file
Names shouldn't matter. If it breaks, create a bug for Amir Soofi, and attach the log file in the same directory as the exe.
Some of the below may be applicable. Honestly have no idea.
============
Old Text
============
arxMap is a command-line utility for translating Arxan protected stack traces out of Microsoft MiniDump files.
The tool scans a given directory for Dump files, Arxmap files, and Symbol files, and uses them to print the full stack trace from the dump file.
It is build agnostic. It considers "game_win64_XXX.exe" and "GTA5.exe" to be the same thing, and will interpret them interchangeably.
Output log name is <dump file>.arxDump.<timestamp>.log.txt
Usage:
arxmap.exe <file path to dump> <stack fail?>
<file path to dump> (Optional):
This is a directory containing the dump file, as well as the arxmap and symbol files.
The tool will only translate for binaries that have arxmap files containing their name.
If this is not provided, the binary will request the user enter a target directory.
<stack fail> (Optional):
Boolean parameter to tell arxDump if arxan f'd up the stack. If ANY string is put here, it will be set to true.
This should be set if you are only getting a single relevant stack frame from the tool. Arxan has issues when dealing with hardware crashes.
TREAT RESULTS WITH CAUTION! WE HAVE NO PROVABLE WAY TO CONFIRM THESE STACK FRAMES ARE CORRECT.
That being said, they have been so far :)
Example:
-----------------------------
>arxDump.exe X:\dumps\b2300668\20150402.13.34.21
Searching the directory X:\dumps\b2300668\20150402.13.34.21 for arxmap, dmp, and symbol files
Parsing arxmap file: X:\dumps\b2300668\20150402.13.34.21\game_win64_final_eu_20150402.13.34.21.exe.arxmap | This may take some time
Parsing arxmap file: X:\dumps\b2300668\20150402.13.34.21\socialclub_release_20150228.16.57.58.dll.arxmap | This may take some time
Took 14 seconds...
Translated Stack trace can be found in: X:\dumps\b2300668\20150402.13.34.21\GTA5.dmp.arxDump.1428424297.log.txt
Finished Translating Dump, press Enter to exit.
-----------------------------
Requirements:
Microsoft Dump file (.dmp)
PDB Symbol file(s) (.pdb)
Arxmap file(s) (.arxmap)
dbghelp.dll (included in P4)
dbgeng.dll (included in P4)
1. The PDB and arxmap files MUST match the EXACT same build as the binary(ies) which generated the crash.
2. The best way I've been able to do it, uses VisualStudio and the symbol server, N:
3. Open the dump file in VisualStudio, hit "Debug with Native Only". You shouldn't get any warnings if you set things up right. If not, reach out to someone who knows about those things.
4. Pull up the modules tab, and find your target binary, for instance (GTA5.exe), and look under the "Symbol File" column.
5. Navigate to that file. You can use a copy of this file as your PDB symbol file.
6. Use the time stamp on the file to identify the correct build directory in N:\RSGLDS\Development\Projects\GTA5_PC\Builds\Exes\, they should be exactly the same.
7. MAKE SURE YOU NAME THE PDB FILE THE EXACT SAME AS WHAT YOU SEE IN YOUR SYMBOL DIRECTORY (i.e. game_win64_final_eu.pdb). The Windows debugger engine won't load the files if the name and signature don't match up.
Instructions:
1. Place the .dmp file, .arxmap, and .pdb files into the same directory
a. Make sure your .pdb file matches the expected Symbol file name, and
b. Make sure that you have an arxmap file for every protected binary you expect in the dump, keep the naming convention that you found it in.
2. Open a command prompt window, and run the command as instructed above, supplying the directory containing the above mentioned files.
3. There should be some output, and once it reports being finished, you should find a log file in the directory you provided.