FinalCheat has mentioned before that IDA Pro is used. That is not free, though, so I've tried Ghidra with some success (was able to make a pointer code for Lego Movie Videogame 2). You need a decrypted game (MaiDump) and the Eboot can be loaded into Ghidra / IDA and be decrypted with ARMv7A. The EBoot has a 0x1000 header that needs to be removed first in something like HxD. After that, it should work, but requires a good knowledge of assembler language still.