Page 1 of 1

Relative offsets and possibly other structure assisting tools

Posted: 09 Jun 2018 23:14
by MulleDK19
I mostly use Hex Editor Neo, because it has a lot of tools for modifying structures, and it makes construction of eg. PE files extremely easy.
But I'm planning on doing some tutorials in the future, and don't want to force a paid tool onto my viewers, so I'm looking for a free HEX editor.

I've used HxD in the past, and it's arguably one of the best free editors. But it doesn't make it easy to modify structures.
One thing that makes it hard, is the fact that it can't show offsets relative to a byte, so if you need to modify a structure that starts at eg. offset 0x47, it becomes a tedious mess of calculating offsets based off of that.

I'm currently resorting to editing the structures in a new empty file, then copying the data into the actual file.

It'd be nice if HxD was able to show the offsets relative to a specific file offset. Something like:
85HDq8m.png (11.26 KiB) Viewed 137 times
And maybe other tools to assist in editing complex structures. Like marking bytes with a color to easily find inline structures.

Obviously a structure viewer would be optimal, but that's no trivial feature.

Re: Relative offsets and possibly other structure assisting tools

Posted: 18 Jun 2018 20:13
by wpe
Wouldn't copying that data structure out to a new file be an easy alternative way? It will start at offset 0000 without any calculation.

Re: Relative offsets and possibly other structure assisting tools

Posted: 05 Jul 2018 12:03
by Fireboyd78
Until something like this gets implemented (if ever), you could try using my method of seeking to relative offsets:
  1. Place the cursor at the beginning of the structure.
  2. Press Ctrl + E to bring up the 'Select block' dialog.
  3. Tab twice to the 'Length' input box.
  4. Enter the relative offset to the data.
  5. ???
  6. Profit!
Obviously you'd need to keep track of where the beginning of each structure is if you need to move the cursor at all, but typically if I'm checking multiple fields it's just a matter of adjusting the amount of selected bytes. Hopefully that makes sense.

21D7N5O.gif (867.55 KiB) Viewed 135 times