This C++ project demonstrates a simple modification to an executable file to change its MD5 hash while keeping it functional. The main purpose is to showcase how changing specific bytes in the code section of an executable can affect its hash value.
The program reads the current executable file, locates the code section, and modifies a predefined pattern within the code. After modification, it writes the changes to a new file and calculates the MD5 hash for both the original and modified files.
Explore the intricacies of modifying an executable file to change its MD5 hash while retaining functionality. This C++ project demonstrates the process of locating and altering specific bytes within the code section of an executable, providing insights into the impact on the resulting MD5 hash.
- C++
- Windows API
- MD5 Hash
- Executable Modification
- Reverse Engineering
- Windows Programming
- Code Section Manipulation
- Educational
- Windows operating system
- Visual Studio or any C++ compiler that supports the Windows API
- Clone the repository:
git clone https://github.com/machinecodeenjoyer/modify-md5-hash.git
cd modify-md5-hash
-
Build the project using your preferred C++ compiler or IDE.
-
Run the executable. If successful, it will display the original and modified MD5 hashes.
main.cpp
: Main C++ source code file.README.md
: Project documentation.LICENSE
: License information.
Feel free to contribute to this project by submitting issues or pull requests. Please follow the code of conduct.
This project is licensed under the MIT License.
This project is for educational purposes only. Modifying executable files may lead to unintended consequences, and it is crucial to respect software licensing agreements and legal regulations.
If you encounter any issues or have questions, please create an issue on the GitHub repository.
- seized
Thank you for using and contributing to this project!