diff --git a/src/formats/pana_dvd/mod.rs b/src/formats/pana_dvd/mod.rs index 25bd158..77e4bee 100644 --- a/src/formats/pana_dvd/mod.rs +++ b/src/formats/pana_dvd/mod.rs @@ -169,8 +169,13 @@ fn extract_file(app_ctx: &AppContext, file_reader: &mut Cursor>, header_ } let data = common::read_exact(file_reader, module.size as usize)?; - println!("- Decrypting..."); - let mut dec_data = decrypt_data(&data, &key); + + let mut dec_data =if module.name() != "VGD " { //VGD is not encrypted? + println!("- Decrypting..."); + decrypt_data(&data, &key) + } else { + data + }; if module.name().starts_with("DRV") { println!("- Extracting DRIVE firmware..."); diff --git a/src/keys.rs b/src/keys.rs index 427a0d5..5438ac8 100644 --- a/src/keys.rs +++ b/src/keys.rs @@ -70,6 +70,7 @@ pub static PANA_DVD_KEYONLY: &[&str] = &[ ("5D88719745A4EFFF"), // ~2012 ("38BB0C17D362701F"), // ~2013 ("EC238CD791456646"), // ~2013 + ("0A1EE6C5BDC4933F"), // ~2013 (china) ("8F8CA88482E43D9B"), // ~2014 ("21FCA17361E66B4E"), // ~2014 ];