Commit graph

55 commits

Author SHA1 Message Date
Alex Barney
49a1f0b5a4 Read save files from SD card 2018-09-10 22:09:35 -05:00
Alex Barney
01f5ed7ccf Update usage text 2018-09-09 20:48:17 -05:00
Alex Barney
643d603732 Add project information to csproj file 2018-09-03 21:23:47 -05:00
Alex Barney
1a7e452a89 Add Duplex FS handler for save files 2018-09-01 14:23:45 -05:00
Alex Barney
5a793d61d6 Rename SdFs to SwitchFs 2018-08-31 11:07:46 -05:00
Alex Barney
93afb840ca Rename libhac to LibHac 2018-08-31 10:50:28 -05:00
Alex Barney
12b2825475 Redo SectorStream classes 2018-08-30 16:18:27 -05:00
Alex Barney
7f016f875b Fix regression caused by decrypting multiple AES blocks at a time 2018-08-28 13:49:55 -05:00
Alex Barney
38dca5c526 Add romfs support to CLI 2018-08-28 12:33:24 -05:00
Alex Barney
e7f5702477 Generate keys from master key + source 2018-08-27 17:40:06 -05:00
Alex Barney
d7929fc458 Use .NET 4.6+ built-in RSA-OAEP decryption 2018-08-25 11:42:33 -05:00
Alex Barney
d701fdd28b Add null check when creating Bktr 2018-08-25 11:37:22 -05:00
Alex Barney
80cf0b43fb Use SharedStreams with savefile reading. Fixes #4 2018-08-24 18:22:48 -05:00
Alex Barney
35475ac5a8 Move streams to Streams namespace 2018-08-23 11:28:45 -05:00
Alex Barney
a68426751f Introduce multi-instance, thread-safe streams
Previously multiple streams could share the same base stream. This meant that you couldn't alternate between streams. If you read from one stream, the state of other streams sharing the same base stream would be messed up and would silently return bad data.

This commit introduces a SharedStream class that allows multiple SharedStreams to share the same base class and not interfere with each other.
2018-08-22 15:54:34 -05:00
Alex Barney
8433b2c91a Extract ExeFS and RomFS for more input types 2018-08-22 15:36:06 -05:00
Alex Barney
7b0ae0c954 Option to export raw RomFS from XCI 2018-08-22 09:58:36 -05:00
Alex Barney
de53449dac Add ExeFS detection 2018-08-15 16:33:45 -06:00
Alex Barney
86741d3c92 Extract main RomFS from XCIs 2018-08-14 17:38:32 -06:00
Alex Barney
1e813818c0 Add support for extracting XCI partitions 2018-08-14 17:21:07 -06:00
Alex Barney
60a8a7b2d3 Read XCI header 2018-08-12 14:45:10 -06:00
Alex Barney
55031755a8 Add ability to create NSP files from SD card contents 2018-08-02 22:14:58 -05:00
Alex Barney
d84c406655 Parse entire NACP file 2018-08-02 18:46:27 -05:00
Alex Barney
46cfb2f948 Read correct duplex data 2018-07-24 18:50:41 -05:00
Alex Barney
f074d89d46 Read and extract core save file system 2018-07-24 14:51:52 -05:00
Alex Barney
b0cac269f3 Read all remapping and journaling savefile layers 2018-07-22 20:28:31 -05:00
Alex Barney
9bd55e19a6 Update usage 2018-07-19 18:34:16 -05:00
Alex Barney
8eeed95639 Process the remapping layer of save data 2018-07-19 18:31:35 -05:00
Alex Barney
f1b660b95f Add IFileSystem interface
I don't know about this. It seems really easy to screw something up.

Allows using the same code for reading the raw nand and reading a normal file system
2018-07-11 20:03:09 -05:00
Alex Barney
ace593a19d Read console-unique keys 2018-07-09 11:47:44 -05:00
Alex Barney
7ed92fedcb Add basic readme 2018-07-08 11:40:55 -05:00
Alex Barney
346e50b949 Support reading patched titles from the SD card 2018-07-07 17:47:03 -05:00
Alex Barney
18bb3d8531 First attempt at implementing BKTR 2018-07-07 15:45:06 -05:00
Alex Barney
e919bcab1b Remove old testing code 2018-07-05 21:44:10 -05:00
Alex Barney
57103c0e0b Improve finding a title's main RomFS 2018-07-05 21:37:46 -05:00
Alex Barney
c4efec762f Mimic hactool output. Verify hashes 2018-07-05 16:37:30 -05:00
Alex Barney
20be7206a0 Add basic CLI functionality 2018-07-02 21:23:07 -05:00
Alex Barney
79b09267e6 Begin command line tool 2018-07-02 15:12:41 -05:00
Alex Barney
ca815312d3 Group titles by main application 2018-07-02 13:16:38 -05:00
Alex Barney
d5ddde4909 Read nacp display name and version 2018-06-30 14:15:55 -05:00
Alex Barney
1df1ce7bcc Read title names 2018-06-29 19:44:12 -05:00
Alex Barney
d24028f34d Improve AES-CTR performance 2018-06-29 18:49:53 -05:00
Alex Barney
b6cac8b5f2 Add romfs class 2018-06-29 14:53:51 -05:00
Alex Barney
3e6d2a7761 Add romfs superblock validation 2018-06-28 16:55:36 -05:00
Alex Barney
95ee755774 Apply section CTR and do a pfs0 superblock validity check 2018-06-28 15:03:04 -05:00
Alex Barney
d336c2e58d Load title keys 2018-06-27 20:25:25 -05:00
Alex Barney
f583d01248 Make sure meta nca is included in title 2018-06-26 19:42:01 -05:00
Alex Barney
e4d9b46e60 Use SdFs class to read titles 2018-06-26 19:10:21 -05:00
Alex Barney
639e16cf98 Add option to dispose base streams 2018-06-25 17:44:44 -05:00
Alex Barney
32996aed3c Have Nax0 dispose stream 2018-06-25 14:01:24 -05:00