dump: handle old MZ executables which lack valid .e_lfanew field.
With this proposed patch, the .e_lfanew field of a file's MZ header is honored only if
- the MZ relocation table starts at exactly offset 0x40 (https://jeffpar.github.io/kbarchive/kb/065/Q65122/), or is obviously bogus (e.g. 0);
- and .e_lfanew actually points to an offset within the file.
(This is an alternative to msbit's proposed patch at https://github.com/zfigura/semblance/pull/7 .)