Any questions? Ask us:



Protecting Opus Pro executables with Enigma Protector

This tutorial describes how to protect Opus Pro files with Enigma Protector. In the article I'm trying to protect executables created with Opus Pro v6, so not sure that this method can be applied to other versions of Opus.

I think that you already know how to create executable files with Opus Pro and have at least one file for test, if no, download simple "Hello World" application here

Let's try to protect current file with Enigma as it is. Open Enigma, choose input and output files and press "Protect" button. Even if Enigma succeeds protection output file does not work. Why? Because input file is already packed with UPX packer, Enigma does not support multy-packers/protectors protection. To get file working we should unpack it.

I'm using UPX 3.02w to unpack this file. Firstly, copy original sample.exe file with the name sample_unpacked.exe (just make a backup copy of original file). To unpack UPX, place upx.exe and sample_unpacked.exe in the same folder and run the following command:

upx.exe -d sample_unpacked.exe

-d - parameter that tells to UPX to unpack file;
sample_unpacked.exe - file to unpack (this file will be overwriten after unpacking).

If UPX succeeds, sample_unpacked.exe file enlarges to approximately 13 Mbytes, that's ok!

Now we have two files for next tests: sample.exe (~2Mb) is original Opus Pro file and sample_unpacked.exe (~13Mb) is unpacked file. Now if you try to run unpacked file it gives error message "Cannot find publication file" instead of correct execution. The error occurs due to losing of some Opus Pro magic data in unpacked file. Just forget it for now.

The unpacked file is prepared to protecting with Enigma. Open Enigma, choose input file sample_unpacked.exe and output file, for example sample_enigma.exe, press "Protect" button. Once Enigma completed protection, you should get sample_enigma.exe file (~3Mb). This file does not work too, it gives the same "Cannot find publication file".

To get it working, I have written special little utility that append magic Opus Pro data into Enigma protected file. Download tool.

Run injector.exe, take a look at the second part of injector, select files to process:

Select original file - select an original Opus Pro executable, sample.exe
Select file protected with Enigma - select unpacked + Enigma protected file, sample_enigma.exe
Select output file - select a file to output injector result, for example, sample_completed.exe

Then press "Process" button. When injector succeeds, you will get "Done!" message, close injector. Now try to run sample_completed.exe. File runs successfully and works well!

Now you know how to protect Opus Pro files with Enigma and you are able to use ALL forces of Enigma and embed it into your software!

I want to tell few words regarding injector utility also, in the first part this tool contains automatic unpacker for UPX files, so you may use it to unpack files without using of command line. Just in injector select file to unpack UPX and press "Unpack" button, but be sure that upx.exe is placed in the same folder with injector.exe.

PS: By using Opus Pro scripts you may also call Enigma API functions and build in registration/trial schemes, use files attachment feature and all the feature that Enigma Protector allows!

Files: - simple "Hello World" Opus Pro executable - UPX 3.02w - tool for injecting magic Opus Pro info into Enigma protected applications

This article is written for education purpose only. Author does not carry any warranties/liability of using of this information.
Author: Vladimir Sukhov
Date: 10 July 2008