11use std:: collections:: HashMap ;
2- use std:: fs:: { create_dir_all , File } ;
2+ use std:: fs:: { File , create_dir_all } ;
33use std:: io:: Write ;
44use std:: ops:: Range ;
55use std:: path:: PathBuf ;
@@ -13,7 +13,7 @@ use pelite::image::{
1313 IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA , IMAGE_DLLCHARACTERISTICS_NO_SEH ,
1414 IMAGE_DLLCHARACTERISTICS_NX_COMPAT ,
1515} ;
16- use pelite:: { pe64 , FileMap } ;
16+ use pelite:: { FileMap , pe64 } ;
1717
1818mod process;
1919
@@ -181,8 +181,7 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
181181 let modules = enumerate_modules ( snapshot) ?;
182182 let regions = enumerate_regions ( process_handle) ;
183183
184- let ( modules, regions) = regions_by_modules ( & modules, & regions) ;
185-
184+ let modules = regions_by_modules ( & modules, & regions) ;
186185 for ( module_name, ranges) in modules. iter ( ) . progress ( ) {
187186 for range in ranges {
188187 let Ok ( mut memory) = read_range ( process_handle, range) else {
@@ -202,11 +201,11 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
202201 }
203202
204203 for region in regions. iter ( ) . progress ( ) {
205- let Ok ( memory) = read_region ( process_handle, region) else {
204+ let Ok ( memory) = read_region ( process_handle, & region. range ) else {
206205 continue ;
207206 } ;
208207
209- let filename = format ! ( "{:x}-{:x}-UNK.dump" , region. start, region. end, ) ;
208+ let filename = format ! ( "{:x}-{:x}-UNK.dump" , region. range . start, region. range . end, ) ;
210209
211210 let mut file = File :: create ( output_dir. join ( filename) ) ?;
212211 file. write_all ( & memory) ?;
@@ -252,10 +251,7 @@ fn patch_section_headers(buffer: &mut [u8]) -> pelite::Result<()> {
252251
253252type ModuleRegionMap = HashMap < String , Vec < Range < isize > > > ;
254253
255- fn regions_by_modules (
256- modules : & [ ProcessModule ] ,
257- regions : & [ MemoryRegion ] ,
258- ) -> ( ModuleRegionMap , Vec < Range < isize > > ) {
254+ fn regions_by_modules ( modules : & [ ProcessModule ] , regions : & [ MemoryRegion ] ) -> ModuleRegionMap {
259255 let mut by_mod: ModuleRegionMap = HashMap :: new ( ) ;
260256 let mut unknown = Vec :: new ( ) ;
261257
@@ -278,9 +274,7 @@ fn regions_by_modules(
278274 * ranges = merge_ranges ( std:: mem:: take ( ranges) ) ;
279275 }
280276
281- unknown = merge_ranges ( unknown) ;
282-
283- ( by_mod, unknown)
277+ by_mod
284278}
285279
286280fn merge_ranges ( mut ranges : Vec < Range < isize > > ) -> Vec < Range < isize > > {
0 commit comments