in src/windows/pdb.rs [91:113]
fn get_data_from_server(url: &str) -> (Vec<u8>, &str) {
let toks: Vec<_> = url.rsplitn(4, '/').collect();
let name = toks[2];
let pe_buf = dl_from_server(url);
let pe_buf = crate::utils::read_cabinet(pe_buf, PathBuf::from(name)).unwrap();
let (pe, pdb_buf, pdb_name) = crate::windows::utils::get_pe_pdb_buf(
&PathBuf::from("."),
&pe_buf,
crate::cache::get_sym_servers(Some(&format!("SRV*~/symcache*{MS}"))).as_ref(),
)
.unwrap();
let pdb = PdbObject::parse(&pdb_buf).unwrap();
let mut output = Vec::new();
let cursor = Cursor::new(&mut output);
let pdb = ObjectInfo::from_pdb(pdb, &pdb_name, Some(name), Some(pe), None, false).unwrap();
pdb.dump(cursor).unwrap();
let toks: Vec<_> = name.rsplitn(2, '.').collect();
(output, toks[1])
}