Settings

Theme

Hiew Hex Editor

lock.cmpxchg8b.com

194 points by taviso 2 years ago · 49 comments

Reader

0xeb 2 years ago

If you like scripting, you can use my HEM extension to write more stuff in Python:

- https://github.com/0xeb/pyhiew/tree/main/bin/pyhiew - https://github.com/0xeb/pyhiew/tree/main/bin/pyhiew - https://0xeb.wordpress.com/2010/08/21/introducing-pyhiew/

zith 2 years ago

In the end of the 90s I was 11-12 years old and used this to crack a copy of the video game SiN. I didn't really know what I was doing, but followed random tutorials for generic game cracking. They guided me through the w32dasm disassember, finding code referencing the "input your cd key" string, finding related jmps jumping to this part of the code, noting the address, opening up the executable in hiew and mulling them out.

It worked! I thought I was a genius. Now I'm amazed how I almost randomly got it right.

29athrowaway 2 years ago

There's a clone of Hiew called HT

https://hte.sourceforge.net/

It's packaged for many Linux distros, and is on Homebrew

    brew install ht
To disassemble, you press F6 and pick any of the detected formats for that file.
madars 2 years ago

Hiew is peak ergonomics, kinda like good orthodox file managers (FAR Manager/Total Commander). Hiew's color scheme is, obviously, Norton Commander's as well :-) One of the few Windows applications that make me keep a Windows VM.

pajko 2 years ago

Hiew is not free. Biew is a similar-looking cross platform hex editor which got renamed to beye (Binary Eye).

https://sourceforge.net/projects/beye/

ruslan 2 years ago

I had been using Hiew in early 90th on MS-DOS and OS/2. Unfortunately it's still MS-DOS/Windows only thing.

speps 2 years ago

I now use ImHex after looking for years for a good one. It has a pattern language to provide highlighting.

https://imhex.werwolv.net/

  • mbirth 2 years ago

    For macOS users, there's also native app Hex Fiend (open source) which also has a pattern language.

    https://hexfiend.com

    HN discussion: https://news.ycombinator.com/item?id=2072899

    And if you don't mind paying, there's also "Synalyze It", which allows you to build the pattern language via the GUI:

    https://www.synalysis.net

  • EspadaV9 2 years ago

    I just found out about ImHex yesterday when I was trying to work out a save game format for an hold retro game. For my very basic needs it was great, and the diffing took came in very handy. Would be keen to see if I could make a pattern for the save game format somehow. Will be something I have to look into.

  • GuB-42 2 years ago

    I may take a look at it again.

    I tried it a few years ago as a free alternative to 010editor and it was a bit unstable. But I see it is under active development, so maybe the issues have been fixed.

  • butz 2 years ago

    ImHex has so many features. Very useful for ROM hacking, as it can display custom text table mappings. I haven't even looked into patterns and other features yet.

dang 2 years ago

One small related thread:

Hiew (Hacker's view) - https://news.ycombinator.com/item?id=18898214 - Jan 2019 (1 comment)

lifthrasiir 2 years ago

I have done several binary analyses as a hobby and never heard of Hiew and clones, how can I?!

(I tend to start with a standalone Python script which gets gradually customized over time. I don't even use a hex editor myself, and I just used xxd if I did really need hexdump for initial explorations. Of course I would comment that xxd output heavily in my editor, and that seems the best moment to use Hiew and clones.)

shmerl 2 years ago

Is there an easy way to use that DOS style font on Linux in something like Midnight Commander viewer or neovim?

I like that font for binary files, it's more distinct than having a bunch of ? symbols for bytes 0-31.

  • Brian_K_White 2 years ago

    For displaying 0-31 in programs and scripts of my own, I add 64 and display that in inverse video.

    The resulting glyph is the letter from the matching CTRL or ^ notation for that byte, but in a single character cell, and still distinct from a byte containing that letter.

    So for instance, a NUL is value 0, which is CTRL+@ or ^@

    But displaying ^@ screws up formatting, and displaying @ collides with byte value 64. Inverse video @ solves both, and doesn't need any special font. I do the same for DEL which is 127 displayed as inverse ?, but the ? is meaningful and adheres to the same rule because it's literally ^? not a placeholder for "no glyph" or "non-printing control byte"

    Doesn't help you with configuring an editor but just describing a way to display those undisplayable bytes in a way that is actually meaningful & unambiguous and without caring what the font or even terminal type is. (ei: works the same in BASIC on a TRS-80 Model 100 or in bash on a xterm, or in c on windows, etc).

smolsky 2 years ago

LOL, shout out to SEN - I used his tool, Hiew back in 1994 for the first time. Good times.

P.S. I still use it from time to time - it has a nice built-in assembler for x86/x86-x64.

evanrelf 2 years ago

I love Dexter! <3

xvilka 2 years ago

Everything Hiew can do, Rizin[1] can do too, and is completely free and open source[2] under LGPL3 license. Moreover, it supports more architectures, platforms, and file formats, as well as GUI in Qt - Cutter[3][4]. If something is missing in Rizin but presented in Hiew, please let us know by opening the issue with details.

[1] https://rizin.re

[2] https://github.com/rizinorg/rizin

[3] https://cutter.re

[4] https://github.com/rizinorg/cutter

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection