FreeObfuscator hosted API build client 1.45.0

Requires .NET 8 runtime, internet access and a FreeObfuscator Pro subscription.
This is an upload client, not a local or offline obfuscation engine.

Set FREEOBFUSCATOR_API_KEY in your CI secret store or local environment.
Do not put your real key in source control or command arguments.

dotnet FreeObfuscator.BuildClient.dll INPUT.dll OUTPUT.dll --encrypt-strings --control-flow
dotnet FreeObfuscator.BuildClient.dll --help

DLL/EXE input up to 100 MB is supported. For a protected binary plus private map:
dotnet FreeObfuscator.BuildClient.dll INPUT.dll BUILD.zip --include-map
The ZIP is validated before publication; entries are never extracted automatically.
Extract it locally. Keep the map private with the exact build; do not ship maps.

Decode an obfuscated crash report offline (no key or internet needed):
dotnet FreeObfuscator.BuildClient.dll --decode INPUT.map.txt CRASH.txt DECODED.txt
Use the map from the exact protected build. Maps restore names, not missing frames
or source line numbers. Maximum local map 10 MB, trace 2 MB.
An exported map with no renamed symbols copies the trace unchanged and explains
the result. Malformed empty maps are rejected; unknown type names stay unchanged.
Output must be a new file in an existing directory.

API guide: https://freeobfuscator.com/ApiDocs
Existing files are never overwritten. Run application tests against the output.
No automatic retry is sent. Keep the original input for a deliberate retry.

Exit codes:
0 success; 2 usage/input; 3 missing or malformed key; 4 rejected key (401);
5 inactive Pro (402); 6 rejected file/options; 7 busy/rate limit;
8 network/path/other HTTP error or cancellation; 9 invalid response.

The client validates managed PE metadata, not runtime compatibility or protection strength.
