You're going to need the following tools:
Step 1. Throw that shit into CPP2IL to get some approximations of the original C# code. That will help understanding the disassembly.
cmd
cpp2il.exe --game-path="path/to/Phasmophobia" --analysis-level=0 --experimental-enable-il-to-assembly-please --parallel --throw-safety-out-the-window
This reconstruct the original .NET DLLs to the best of CPP2IL's ability and put them into a folder called cpp2il_out
.
You can open these with ILSpy or dnspy. That folder also contains the type metadata in human-readable format.
Step 2. Throw that shit into il2cppdumper to get an IDA/Ghidra script that will load the type information and method names for you.
Just run il2cppdumper.exe and point it to Phasmophobia/GameAssembly.dll
and Phasmophobia/Phasmophobia_Data/il2cpp_data/Metadata
.
Step 3. Open Phasmophobia/GameAssembly.dll
in your decompiler of choice. I'm gonna assume you're using the
legally obtained free version of IDA. Let it analyze, it's gonna take a long time.