I've found that the only bytes needing modification are the ones at offset 0x12, nothing else. I
did managed to recover my save once, and this was basically my process:
- Back up "corrupt" save
- Go into game, clear save file, then go to the Home menu and open SaveDataFiler
- Back up cleared save
- Open corrupt save and cleared save in Hex Editor, copy 4 bytes at 0x12 from cleared save to corrupt save, save to SD card
- Go into SaveDataFiler again, restore corrupt save
Note that you cannot restore the same save more than twice if you have already written the save and opened the game. Every time you make edits you MUST do it on a freshly dumped save, and you cannot open Smash before writing the modified save or you will need to redump the save and modify it again. I'm trying to get a code.bin modification going so that this check is negated for those who have their games decrypted, still need to find the check though.