Attached are two projects, one for crypting your files, the other to create the binded exe.
Here's how to use it.
Say you wish to bind notepad.exe and calc.exe...
Step 1: Use CryptFile.exe as follows:
D:\cpp\CryptFile\Release>CryptFile.exe notepad.exe Seed used for encryption is: 0x23e4ddec . Remember this for later...
This gives me output: notepad.exe.crypt
Similarly, do this on calc.exe to give calc.exe.crypt.
Remember the seeds!
Step 2: Open up the binder project in Visual Studio 2003. Go to the resource tab, and add two resources for each crypted file. [right click, Add Resource, Import..., select all file types, select crypted file. Specify custom resource section name "CRYPT"].
Make sure the section is called CRYPT and the two resources are named IDR_CRYPT1, IDR_CRYPT2 otherwise this will fail:
FindDecryptAndWriteResource(IDR_CRYPT1, "CRYPT", file1, seed1); FindDecryptAndWriteResource(IDR_CRYPT2, "CRYPT", file2, seed2);
Step 3: Modify seed values and filenames for output at start of binder.cpp:
DWORD seed1 = 0x23C5943D; DWORD seed2 = 0x23D16998; char file1[] = "myFile1.exe"; char file2[] = "myFile2.exe";
Step 4: Rebuild the project in release mode.
You will now have a binded, self deleting executable.
If you want extra files binded, just use common sense to add another two lines to the code.
Enjoy!
N.B. next release should automate all this stuff for you. Eventually we might even have a GUI.
