A C# port of the Arma 3 EBO (Encrypted PBO) decrypter tool, optimized for handling very large files.
The decryption algorithm, core logic, and original implementation were created by Douggem and released on the UnknownCheats forum.
This repository is a fork/re-implementation of Douggem's original tool, ported to C# and updated to solve issues with modern large mod files.
- Streaming Decryption (No OOM / Error 12): The original C++ version reads the entire file into memory before starting decryption. Because it was a 32-bit application, it frequently ran out of address space on large mod files (e.g. over 1.5 GB), resulting in memory allocation errors. This version implements a streaming approach, reading and decrypting the file block-by-block. It can decrypt files of any size (even 50 GB+) while keeping memory usage under 20 MB.
- Auto-Detecting Keys (Universal DLC Support):
The tool contains a built-in database of decryption keys. It automatically analyzes the file's encrypted data and intelligently applies the correct key. It currently supports:
- Standard DLCs (S.O.G. Prairie Fire, Global Mobilization, CSLA Iron Curtain)
- Expeditionary Forces DLC
- Automatic Header & Checksum Patching:
Some newer Creator DLCs (such as Expeditionary Forces) use non-standard file headers and checksum formats to break compatibility with community tools like
ExtractPboorPBOManager. This tool automatically patches the PBO magic signatures and removes invalid trailing checksums so the decrypted.pbois 100% standard-compliant and ready to open in any utility. - Zero Dependencies & Simple Compilation: Written in standard C# targetting .NET Framework 4.0, which is pre-installed on all modern Windows installations. You do not need Visual Studio to compile it.
You can compile the project using the standard Windows C# compiler (csc.exe) that comes pre-installed with Windows.
- Open PowerShell or Command Prompt.
- Run the following command:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /out:EBODecrypter.exe /platform:x64 /optimize+ Program.cs
This will generate EBODecrypter.exe in the current folder.
Simply drag and drop any .ebo file onto EBODecrypter.exe in Windows Explorer. The tool will decrypt the file and create a decrypted .pbo file in the same directory.
Open your terminal and run:
EBODecrypter.exe "C:\Path\To\YourFile.ebo"You can also pass multiple files as arguments:
EBODecrypter.exe "file1.ebo" "file2.ebo" "file3.ebo"