diff --git a/libr/bin/format/pe/pe.c b/libr/bin/format/pe/pe.c index 8c70501b41..7bb884d6c5 100644 --- a/libr/bin/format/pe/pe.c +++ b/libr/bin/format/pe/pe.c @@ -2204,7 +2204,7 @@ struct r_bin_pe_import_t* PE_(r_bin_pe_get_imports)(struct PE_(r_bin_pe_obj_t) * if (!bin_pe_parse_imports (bin, &imports, &nimp, dll_name, import_func_name_offset, curr_delay_import_dir->DelayImportAddressTable)) break; - if ((size_t)(curr_delay_import_dir - off) + sizeof (curr_delay_import_dir) > bin->size) { + if ((size_t)(void*)curr_delay_import_dir + sizeof(curr_delay_import_dir) > (size_t)(void*)bin->b->buf + bin->size) { eprintf ("Warning: malformed pe\n"); return NULL; }