PS3 SelfTool

SelfTool v1.0 – Download

SelfTool Example Results

I’ve finally gotten around to finishing my SelfTool for manipulating Self and Sprx files. Self files are like exe files for the PS3 and Sprx files are like dll files for the PS3.

Among other things, SelfTool can be used to print out information stored in the file in a readable format to make studying them easier.

NOTE: This DOES NOT enable booting of copied games in any way. It also does not support decrypting or encrypting of self/sprx files. It is really only useful for those who are interested in looking a bit deeper at self/sprx files.

14 thoughts on “PS3 SelfTool

  1. Looks interesting!

    Can you compile you program for unix-like systems (elf binary instead of MS exe)?


  2. Hello,
    Your work is really amazing. I was wondering, could you provide more info on the mgs4 self files? I am not that knowledgeable on the current status of ps3 reverse engineering, but i have wanted to get a look at the unencrypted self and usrdir files. I am currently working on the mgs2 and mgs3 model, texture, and animation formats. I have read that some of the technique used in this game were similar and wanted to see if the methods that work on the previous games in the series work against this game if possible. The file extensions and directory structure are similar from what i can tell but i don’t know how to get past the disc encryption. Would really like to analyze these files further.

    Any information you could provide would be greatly appreciated.

    Thanks in advance.

  3. This does not decrypt encrypted SELF files, however it is still able to get a fair bit of information from them which can be printed out to get clues about how a SELF works, where it loads to, what flags it uses etc.

  4. Hi xorloser,

    Your tool is very good, thanks.

    Could you publish the source code behind your tool (to avoid losing time in reversing it 😉 ?

    I have also triggered some crash when extracting some self files from the public PS3 dump archive.
    Crash happen with files extracted at following offset:
    0x006C25B4 with size 256KB -> Crash.
    0x006D5470 with size 256KB -> return Error loading …
    0x001624BC with size 256KB -> Crash.

    Best Regards


  5. it crashes on those “files” because they are not full files, just the headers followed by garbage :)

    also i do not plan to release the source code at this time, sorry

  6. ha, somehow I spent the better part of last night looking for details on the self format, and I missed this page/tool!

    Thanks a bunch…although I agree it’s a shame that we must reverse your tool in order to really see what’s going on :(

  7. @Glen , if ur still having trouble try renaming the ‘.self’ to ‘EBOOT.bin’, this can be done by rightclicking>Rename… or if you have no access to a mouse, open run (Windowskey +r) type notepad.exe , press ENTER now type
    @echo off
    ren *.self *.self

    SAVE AS “RenAll2Bin.bat”, in the same folder as all self files you want converted to .bin , for later renaming to EBOOT, Srry bout late answer it took me 4 years to work out myself

    – TrecherousZ

Leave a Reply

Your email address will not be published. Required fields are marked *