Repository navigation
v1.0.0
PE API Replacer - Release Installation Guide
📦 What's Included
This release contains a fully packaged, portable application with pre-built native libraries for multiple architectures and runtimes. No additional installation or compilation required.
Package Contents
pe-api-replacer-v1.0-release/
├── api_patcher.exe # Main application (PyInstaller compiled)
├── config.py # Configuration file (optional, for advanced users)
├── README.md # This file
│
├── 📂 API/ # Pre-compiled replacement DLLs
│ ├── 📂 exinet/
│ │ ├── 📂 ucrt/ # Universal C Runtime version
│ │ │ ├── x32/
│ │ │ │ └── exinet.dll
│ │ │ ├── x64/
│ │ │ │ └── exinet.dll
│ │ │ └── arm64/
│ │ │ └── exinet.dll
│ │ │
│ │ └── 📂 msvcrt/ # MSVC Runtime version (legacy)
│ │ ├── x32/
│ │ │ └── exinet.dll
│ │ ├── x64/
│ │ │ └── exinet.dll
│ │ └── arm64/
│ │ └── exinet.dll
│ │
│ ├── 📂 exhttp/
│ │ ├── 📂 ucrt/
│ │ │ ├── x32/
│ │ │ ├── x64/
│ │ │ └── arm64/
│ │ └── 📂 msvcrt/
│ │ ├── x32/
│ │ ├── x64/
│ │ └── arm64/
│ │
│ ├── 📂 exws2/
│ │ ├── 📂 ucrt/
│ │ │ ├── x32/
│ │ │ ├── x64/
│ │ │ └── arm64/
│ │ └── 📂 msvcrt/
│ │ ├── x32/
│ │ ├── x64/
│ │ └── arm64/
│ │
│ └── 📂 [other_api_libs]/
│ ├── 📂 ucrt/
│ │ ├── x32/
│ │ ├── x64/
│ │ └── arm64/
│ └── 📂 msvcrt/
│ ├── x32/
│ ├── x64/
│ └── arm64/
│
└── 📄 CHANGELOG.md # Version history
🚀 Quick Start
Windows
-
Extract the archive to your desired location
C:\Program Files\PE-API-Replacer\ -
Run the application
- Double-click
api_patcher.exe - Administrator privileges may be requested (required for file modifications)
- Double-click
-
Select your files and configure options
- Click "Add Files" or "Add Folder"
- Choose APIs to replace
- Configure backup/overwrite settings
- Click "Start Patching"
macOS / Linux
While the core Python code is cross-platform, the pre-built executable is Windows-only. To run on macOS/Linux:
# Ensure Python 3.10+ is installed
python3 --version
# Install dependencies
pip3 install PyQt6 pefile
# Run from source
python3 api_patcher.py📁 Installing Replacement Libraries (Optional)
The replacement DLL files are optional and only needed if you want custom API interception. Choose your runtime environment and architecture.
Selecting the Right Runtime
- UCRT (Universal C Runtime) - Recommended for Windows 10/11 and modern systems
- MSVCRT (Legacy) - For older Windows versions or systems without UCRT
Installation by Architecture
For 32-bit Applications (SysWOW64)
Choose your runtime, then copy x32 DLLs:
UCRT (Recommended):
Copy-Item -Path "API\exinet\ucrt\x32\*.dll" -Destination "C:\Windows\SysWOW64\" -Force
Copy-Item -Path "API\exhttp\ucrt\x32\*.dll" -Destination "C:\Windows\SysWOW64\" -Force
Copy-Item -Path "API\exws2\ucrt\x32\*.dll" -Destination "C:\Windows\SysWOW64\" -Force
# ... repeat for other API librariesMSVCRT (Legacy):
Copy-Item -Path "API\exinet\msvcrt\x32\*.dll" -Destination "C:\Windows\SysWOW64\" -Force
Copy-Item -Path "API\exhttp\msvcrt\x32\*.dll" -Destination "C:\Windows\SysWOW64\" -Force
# ... repeat for other API librariesFor 64-bit Applications (System32)
Choose your runtime, then copy x64 DLLs:
UCRT (Recommended):
Copy-Item -Path "API\exinet\ucrt\x64\*.dll" -Destination "C:\Windows\System32\" -Force
Copy-Item -Path "API\exhttp\ucrt\x64\*.dll" -Destination "C:\Windows\System32\" -Force
Copy-Item -Path "API\exws2\ucrt\x64\*.dll" -Destination "C:\Windows\System32\" -Force
# ... repeat for other API librariesMSVCRT (Legacy):
Copy-Item -Path "API\exinet\msvcrt\x64\*.dll" -Destination "C:\Windows\System32\" -Force
Copy-Item -Path "API\exhttp\msvcrt\x64\*.dll" -Destination "C:\Windows\System32\" -Force
# ... repeat for other API librariesFor ARM64 Windows Devices
Choose your runtime, then copy ARM64 DLLs to System32:
UCRT (Recommended):
Copy-Item -Path "API\exinet\ucrt\arm64\*.dll" -Destination "C:\Windows\System32\" -Force
Copy-Item -Path "API\exhttp\ucrt\arm64\*.dll" -Destination "C:\Windows\System32\" -Force
# ... repeat for other API librariesMSVCRT (Legacy):
Copy-Item -Path "API\exinet\msvcrt\arm64\*.dll" -Destination "C:\Windows\System32\" -Force
Copy-Item -Path "API\exhttp\msvcrt\arm64\*.dll" -Destination "C:\Windows\System32\" -Force
# ... repeat for other API librariesRequired: Run PowerShell as Administrator for System32/SysWOW64 operations.
🌍 Language Support
Current Release (v1.0)
- Ukrainian (Українська) - Primary language
Multilingual Release (Coming Soon)
An updated version with multiple language support will be released shortly, including:
- English
- Ukrainian
- Additional languages (TBD)
If the Ukrainian interface is not suitable for your needs, a full English translation will be available upon request without any difficulty.
⚙️ Configuration
The config.py file contains API replacement definitions. For most users, the default configuration is sufficient.
For Advanced Users
Edit config.py to add custom API replacements:
DLL_REPLACEMENTS = {
1: {'name': 'CUSTOM_API', 'replacements': {
b'ORIGINAL.DLL': b'REPLACE.DLL\x00',
b'original.dll': b'replace.dll\x00',
}},
}Important: Replacement length must equal original length. Pad with \x00 if needed.
After editing, place config.py in the same directory as api_patcher.exe for changes to take effect.
🔧 System Requirements
- OS: Windows 10/11 (x86-64, x86-32, or ARM64)
- RAM: Minimum 512 MB (1 GB recommended for batch operations)
- Disk Space: 50 MB for application + storage for backups
- Permissions: Standard user account (admin elevation on demand)
- Runtime: UCRT (recommended) or MSVCRT (legacy systems)
📋 Supported APIs (Default)
- WINHTTP → EXHTTP
- WININET → EXINET
- WS2_32 → EXWS2
- SENSAPI → EXSENS
- IPHLPAPI → EXIPHL
- URLMON → EXURLM
- NETAPI32 → EXNETAPI
- WSOCK32 → EXWS
- WINTRUST → EXTRUST
🛡️ Safety Features
- Automatic Backups: All originals saved to
backup/folder - Permission Management: Auto-handles Windows file permissions
- Progress Tracking: Real-time logging of all operations
- Batch Processing: Multi-threaded operations keep UI responsive
- Checksum Recalculation: Valid PE files after patching
⚠️ Important Notes
- Administrator Rights: File modifications may require elevation
- Runtime Selection: Choose UCRT for modern systems, MSVCRT for legacy
- Architecture Matching: Use correct DLL version (x32/x64/arm64)
- Backup Your Files: Always test on copies first
- Virtual Machines: Use VMs for initial testing
- System Restore Points: Create restore points before patching
- Signature Validation: Patching may invalidate digital signatures
🐛 Troubleshooting
| Problem | Solution |
|---|---|
| "Permission Denied" | Run PowerShell as Administrator; check UAC settings |
| Application won't start | Ensure Windows 10+ or compatible runtime installed |
| DLL not found error | Verify correct architecture and runtime in API/ folder |
| Files don't get patched | Check if target DLLs are present in config.py |
| UI frozen | Application is processing; wait for progress bar to complete |
| Runtime mismatch | Use UCRT for Windows 10/11; MSVCRT for older systems |
🔄 Restoring Original Files
If issues occur:
- From Backup: Restore from
backup/folder created during patching - Manual Restore: Replace patched file with original
- System Restore: Use Windows System Restore to previous point
- Clean Installation: Reinstall affected application
- Remove DLLs: Delete installed DLLs from System32/SysWOW64 if needed
📞 Support
- Issues: Report bugs on GitHub Issues
- Feature Requests: Submit with
[FEATURE]tag - Language Support: Available in upcoming release
📜 License
GNU General Public License v3.0 (GPL-3.0)
This software is free to use, modify, and distribute under GPL terms. See LICENSE file for details.
🔗 Additional Resources
📝 Version History
v1.0 (Current Release)
- Initial release
- IAT and Hex patching support
- Batch file processing
- Real-time logging
- Ukrainian interface
- Pre-compiled DLLs for x32, x64, ARM64
- UCRT and MSVCRT runtime options
v1.1 (Coming Soon)
- Multilingual support (English, Ukrainian, others)
- Enhanced UI/UX improvements
- Additional API definitions
Status: Stable Release | Updated: 2025 | Support: Active
For the latest version and updates, visit the GitHub repository.
🔧 Automated Installation (Coming Soon)
An INNO Setup installer for x86-64 systems is planned for users who prefer automated installation. This will handle:
- Automatic file extraction to Program Files
- One-click DLL installation (with runtime selection)
- System PATH configuration
- Shortcut creation
- Uninstall support
Check back for the automated installer release if manual installation feels tedious.