ImHex v1.29 releases: Hex Editor for Reverse Engineers, Programmers
ImHex
A Hex Editor for Reverse Engineers, Programmers, and people that value their eyesight when working at 3 AM.
Features
- Featureful hex view
- Byte patching
- Patch management
- Copy bytes as feature
- Bytes
- Hex string
- C, C++, C#, Rust, Python, Java & JavaScript array
- ASCII-Art hex view
- HTML self-contained div
- String and hex search
- Colorful highlighting
- Goto from start, end, and current cursor position
- Custom C++-like pattern language for parsing highlighting a file’s content
- Automatic loading based on MIME-type
- arrays, pointers, structs, unions, enums, bitfields, using declarations, litte and big-endian support
- Useful error messages, syntax highlighting, and error marking
- Data importing
- Base64 files
- IPS and IPS32 patches
- Data exporting
- IPS and IPS32 patches
- Data Exporting
- Data inspector allowing interpretation of data as many different types (little and big-endian)
- Huge file support with fast and efficient loading
- Strings search
- Copying of strings
- Copying of detangled strings
- File hashing support
- CRC16 and CRC32 with custom initial values and polynomials
- MD4, MD5
- SHA-1, SHA-224, SHA-256, SHA-384, SHA-512
- Disassembler supporting many different architectures
- ARM32 (ARM, Thumb, Cortex-M, aarch32)
- ARM64
- MIPS (MIPS32, MIPS64, MIPS32R6, Micro)
- x86 (16 bit, 32 bit, 64 bit)
- PowerPC (32 bit, 64 bit)
- Sparc
- SystemZ
- XCore
- M68K
- TMS320C64X
- M680X
- Ethereum
- Bookmarks
- Region highlighting
- Comments
- Data Analyzer
- File magic-based file parser and MIME type database
- Byte distribution graph
- Entropy graph
- Highest and avarage entropy
- Encrypted / Compressed file detection
- Helpful tools
- Itanium and MSVC demangler
- ASCII table
- Regex replacer
- Mathematical expression evaluator (Calculator)
- Hexadecimal Color picker
- Built-in cheat sheet for pattern language and Math evaluator
- Doesn’t burn out your retinas when used in late-night sessions
Changelog v1.29
Additions
- Added support for saving / loading your own Layouts!
- Added spanish translation. Thanks a lot to @XorTroll
- Added a network control interface
- When enabled, external tools can now send commands to ImHex over a TCP Socket
- Added non-ranged and aligned value search to find view
- Added a Documentation helper AI window where you can ask questions about ImHex and the Pattern Language
- Added selection range radio button to various views to allow specifying of exact start/end addresses
- Added a button to restore default layout when no views are open
- Opening .hexproj files through the File -> Open menu now opens them as Projects instead of as Files
- Names and Values in the pattern data view now display tooltips when hovering over them if they’re too long
- Added bit and byte reversal nodes to the data processor. Thanks to @Nowilltolife
- Drastically improve the usefulness of the IEEE754 tool. Massive thanks to @paxcut
Improvements
- ImHex now tries its best to not keep any file handles around
- This should allow opening files in other tools while they’re already open inside of ImHex.
- For this to work, the other tool needs to support sharing the file though.
- Some things that didn’t really fit in the
Help
menu have been moved to the newExtras
menu - Many things that accessed file data are now significantly faster
- Files in the file chooser popup can now be opened by double clicking them
- Greatly improved how popups are being handled
- Pins in the data processor are more visible now
- Buttons in the bookmarks view now have tooltips
- ImHex’s FPS limit now better follows the setting
- ImHex now shows an error message when it can’t open files. Thanks to @iTrooz
- Pattern highlighting is now being generated much more quickly
- About page is now resizable
- Diff table is now being cleared properly when providers are closed
- MacOS should now be able to use the Open With dialog to open a file with ImHex
- Patterns that are empty can no longer be saved
- Patterns are now being automatically re-evaluated when code sync is on and the provider is being changed
- Fixed issue where the cursor icon sometimes got stuck on Windows
Bug Fixes
- Fixed crash when trying to place patterns through the Edit menu
- Fixed issue where Disassembler names didn’t correspond to the correct architecture
- Fixed occasional crashes when opening project files
- Fixed a bug where the last line of patterns went missing when saving / reloading them
- Multi-window support is now disabled by default on Linux as it doesn’t work well. It can still be enabled in the settings.
- Fixed issue where some shortcuts triggered twice
- Fixed commit link in about page not working correctly
- Fixed provider undo stack not working correctly
- Fixed crash when patterns are being evaluated to quickly in succession
- Fixed project files failing to save when custom encodings are loaded
- Fixed issue where ImHex sometimes dumped a bunch of compiled magic files into the user’s current directory
- Fixed a crash when closing providers too quickly
- Fixed Copy-As options not being disabled correctly in some cases
- Fixed issue where editing a hex cell sometimes had the wrong value in it
Pattern Language
- Added try-catch statements
- Added
std::math::exp()
- The
std::file
functions can now write entire patterns to a file instead of just strings - Ternary operators now correctly short-circuit
- Fixed use of templates in pointer sizes
- Fixed tons and tons of bugs
Download
Copyright (C) 2020 WerWolv