Windows desktop utility (Fyne UI) that encrypts executables with AES-256 and emits a small loader stub that decrypts and runs the payload. It can embed PE metadata and a custom icon. The stub supports optional identifier obfuscation to vary static signatures.
- AES-256 encryption of an input
.exe. - Stub builder with optional identifier obfuscation (“harden stub”).
- PE metadata fields (Company/Product/Description/FileVersion/ProductVersion).
- Custom
.icoembedding via goversioninfo. - Optional deletion of the original file after encryption.
- Run
cmd/obfuscator/main.go(or the built binary). - Select an EXE and set a password (≥8 chars).
- Optionally fill PE metadata and select an
.ico. - Toggle:
- Harden stub (identifier renaming).
- Delete original after encryption.
- Click “Encrypt EXE”. Output:
<name>_crypted.exenext to the source.
go build -o umbrapack.exe ./cmd/obfuscator- Stub hardening: renames identifiers in the generated loader to reduce static signature reuse. Turn off if you want a “cleaner” binary.
- PE metadata: populate fields to make the binary look more legitimate (paired with code signing, this greatly helps reputation).
- Icon: select a
.icoto embed into the loader. - Delete original: if enabled, the source EXE is removed after encryption (off by default).
- MetaDefender Score: 2/22 - Near-FUD status with minimal AV detections.
- Windows Defender: ✅ Not detected
- SmartScreen: ✅ Not blocked
- Code-sign the resulting
_crypted.exewith a valid certificate (OV/EV) to further reduce detections and achieve FUD status. - For maximum undetectability, enable stub hardening, provide PE metadata, embed a custom icon, and sign the output.
- The current stub writes a decrypted copy and runs it. If you need “save-only” (no auto-run), adjust the stub behavior accordingly.
- Build errors from the UI will show the
go buildstderr/stdout. Most common causes:- Invalid
.icoor missing PE fields format. - Go toolchain not on PATH.
- AV blocking temporary build directory.
- Invalid
- If AV flags persist, try:
- Disable stub hardening.
- Use a consistent build path (not a random temp) and sign the binary.
- Provide PE metadata and icon.
- Go + Fyne for UI.
- goversioninfo for PE resources (version info + icon).
- AES-256 CFB for payload encryption.
cmd/obfuscator/main.go launches the Fyne UI and wires to internal/gui + internal/execryptor.
Use only for legitimate software protection. You are responsible for complying with applicable laws and licenses.