前言

2021-08-18记录

之前在6月写过一版反编译的教程,但是博客系统炸了,文章内容全部丢失。这一版是8月中重写的。

使用工具

  • 已破解PSV一台
  • 可执行文件解密工具:FAGDec
  • 文件传输工具:VitaShell
  • 反编译工具:IDA / Ghidra

提取原始二进制文件

1、打开解密工具

archive18-01

  • 解密工具主界面
    archive18-02
    需要注意的是解密软件的按键布局是欧美布局,是返回 是确定

2、选择解密需要解密的游戏

archive18-03

3、将eboot.bin加入待解密列表

archive18-04

4、返回主界面,选择解密

archive18-05

5、开始解密

archive18-06
解密选项有两个,ELF:明码二进制文件 SELF:加密二进制文件。
我们选择ELF明码二进制文件。

  • 解密过程1
    archive18-07
  • 解密过程2
    archive18-08
  • 解密结果文件
    archive18-09
    解密出来的文件在ux0:/FAGDec/patch/${ID}/目录下,eboot.bin.elf则是我们解密出来的原始二进制文件。

6、使用反编译工具打开ELF文件

将解密出来的二进制代码文件传至PC,用自己习惯的反编译工具打开即可。
下图则是使用Ghidra打开的示例:
archive18-10
对于PSV的一些内建函数,我们可以使用反编译插件来让其更具有可读性
IDA:vita-ida-physdumpvitaldr
Ghidra:GhidraVitaLoader