Markers are special inclusions in the source code of the module that allow adding a wide range of possibilities to increase safety of the protected module. The functionality of an unprotected module will not be affected by markers. To activate markers you need to protect the module before using it.
- Markers cannot be used in .NET applications;
- Visual Basic 6 applications should be compiled in native mode (not pcode).
The Enigma Protector supports the following kinds of markers:
- VM markers - allow selecting code that will be emulated after the protection and executed under its own Virtual Processor. This marker is the best choice to protect weak points of the protection/registration routines.
- Reg_Crypt markers - allow selecting parts of the code that should only be executed in a registered version
- UnReg_Crypt markers - allow selecting parts of the code that should only be executed in an unregistered version
- Decrypt_On_Execute markers - allow selecting parts of the code that should only be deciphered when the code needs to be executed
- Unprotected markers - allow selecting the code that should not be executed in a protected version of a file
- Check_Protection markers - this markers check the integrity of the protection code, and if it is corrupted, the code inside markers will not be executed
- Run_Once markers - the selected code in this marker will be run only once while execution, after the first execution the marker will be deleted from memory and will never be executed again