MCPcopy Create free account
hub / github.com/Kudaes/Dumpy / decrypt

Function decrypt

dumpy/dumper/src/lib.rs:699–733  ·  view source on GitHub ↗
(file_path: &str, key: &str, output_file: &str)

Source from the content-addressed store, hash-verified

697}
698
699pub fn decrypt (file_path: &str, key: &str, output_file: &str)
700{
701 unsafe{
702
703 let mut file = File::open(file_path).expect("[x] Error opening input file.");
704 let metadata = fs::metadata(file_path).unwrap();
705 let mut buffer = vec![];
706 file.read_to_end(&mut buffer).unwrap();
707
708
709 let mut buffer_ptr = buffer.as_ptr().add(1);
710 let key = format!("{}{}", key, "\0");
711 let mut key_ptr = key.as_ptr();
712 let mut xor_key: u8 = *key_ptr;
713 key_ptr = key_ptr.add(1);
714 while *key_ptr != '\0' as u8
715 {
716 xor_key = xor_key ^ *key_ptr;
717 key_ptr = key_ptr.add(1);
718 }
719
720 let mut file_content: Vec<u8> = vec![];
721 for _i in 0..metadata.len()
722 {
723 file_content.push(*buffer_ptr ^ xor_key);
724 buffer_ptr = buffer_ptr.add(1);
725 }
726
727 let mut output = std::fs::File::create(output_file).unwrap();
728 let _r = output.write_all(&file_content).unwrap();
729 }
730
731 println!("{}", &lc!("[+] Successfully decrypted minidump file."))
732
733}

Callers 1

startFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected