2024-12-04 00:53:51 -08:00
2024-12-04 00:53:51 -08:00
2024-12-04 00:53:51 -08:00
2024-12-04 00:53:51 -08:00

HexaWork - Byte Inspector

Overview

HexaWork is a Python Tkinter application for binary file inspection and analysis. It provides a hexadecimal viewer and advanced byte analysis capabilities.

Features

1. Hexadecimal View

  • Three-column display: offset, hexadecimal values, and ASCII representation
  • Uppercase hexadecimal values for better readability
  • Monospace font for perfect alignment
  • Horizontal and vertical scrollbars

2. Byte Analysis

Normal Order

  • HEX: Hexadecimal representation of selected bytes
  • DEC: Corresponding decimal value
  • !HEX: Bitwise complement in hexadecimal
  • !DEC: Bitwise complement in decimal

Reverse Order

  • HEX: Hexadecimal representation of bytes in reverse order
  • DEC: Decimal value of reverse order
  • !HEX: Bitwise complement in hexadecimal
  • !DEC: Bitwise complement in decimal

3. Flexible Selection

  • Direct selection of hexadecimal values
  • Full line selection including offset and ASCII
  • Automatic analysis update on selection

4. ASCII Pattern Analysis

  • Comprehensive file-wide ASCII text scanning
  • Detects various patterns:
    • Phone numbers
    • Short letter sequences
    • Alphanumeric codes
    • Potential 3-letter abbreviations
  • Interactive results popup
  • Supports multiple pattern types

5. Advanced ASCII Pattern Recognition

  • Comprehensive file-wide text scanning
  • Multiple pattern detection:
    • Possible Software Numbers (10-11 digits)
    • Vehicle Identification Numbers (VIN)
    • Potential Code Sequences
    • Possible PIN Codes
  • Unique pattern occurrence counting
  • Interactive results display
  • Supports complex alphanumeric pattern matching

6. Pattern Analysis Features

  • Detailed pattern identification:
    • Detects 3+ letter codes
    • Finds long numeric sequences
    • Highlights repeated patterns
  • Occurrence frequency tracking
  • User-friendly results popup
  • Flexible pattern recognition

Installation

  1. Requirements:

    • Python 3.7 or higher
    • Tkinter (usually included with Python)
  2. Install dependencies:

pip install -r requirements.txt

Usage

  1. Run the program:
python main.py
  1. Features:
    • Click "Select File" to choose a binary file
    • Select bytes in the hex viewer (using mouse or keyboard)
    • View automatic analysis in Normal Order and Reverse Order panels
    • Use scrollbars to navigate large files

Examples

Byte Analysis

If you select bytes "4E 31":

  • Normal Order:

    • HEX: 4E31
    • DEC: 20017
    • !HEX: [complement]
    • !DEC: [decimal complement]
  • Reverse Order:

    • HEX: 314E
    • DEC: 12622
    • !HEX: [complement]
    • !DEC: [decimal complement]

Detailed Update History

Version 0.2.0 - Advanced Editing Capabilities

Hexadecimal Editing Enhancements

  • Implemented sophisticated in-place hexadecimal editing
  • Developed smart cursor positioning algorithm
    • Maintains cursor location during edits
    • Handles edits at any file location
  • Preserved line formatting during byte modifications
  • Added real-time hex value validation

File Modification Safety

  • Introduced file size change warning mechanism
  • Implemented confirmation dialog for file size alterations
  • Ensured user awareness of potential file structure changes

Checksum Refinements

  • Enhanced checksum calculation methods
  • Supported variable-length byte sequences
  • Implemented three distinct checksum types:
    • 1-byte Sum Checksum
    • 1-byte XOR Checksum
    • 16-bit Checksum
  • Provided hexadecimal representation of checksums

Technical Improvements

  • Added comprehensive error logging
  • Improved input validation
  • Enhanced user interaction during file editing

Upcoming Features

  • Large file performance optimization
  • Advanced search functionality
  • More configurable display options
  • Comprehensive unit testing

Logging

  • Log file: hexawork.log
  • Records operations and errors for debugging
  • Format: timestamp, module, level, message

Contributing

Feel free to:

  • Report bugs
  • Suggest improvements
  • Submit pull requests

License

This project is under the MIT license.

Description
No description provided
Readme 37 KiB
Languages
Python 100%