Mutate macro

<< Click to Display Table of Contents >>

Navigation:  Themida > SecureEngine® Macros >

Mutate macro

The MUTATE macro allows you to mark regions of code that will be mutated. The original x86 machine code will be converted into equivalent but complex x86 machine code. The execution of the MUTATE macro is quite fast compared to VM macros but the level of security is quite low compared with VM macros.

 

The MUTATE macro is suitable for those code areas that you want to apply some obfuscation and want to keep a high performance in the execution of the mutated code.

 

NOTE: The current version of SecureEgine® does not support this macro for .NET languages or Visual Basic compiled in PCode mode.

Click to expand/collapseShow Delphi Macro Usage
Click to expand/collapseShow C/C++ Macro Usage
Click to expand/collapseShow Visual Basic Macro Usage

 

 

Remarks

 

To make sure that you have inserted a MUTATE macro in a right place in your application, you should be aware of the following details:

 

Switch statements inside the macro might not work properly in some compiled applications. Notice that Switch statements are named in a different way in different programming languages ("Case" --> Delphi, "Select Case" --> VB, etc).

 

Exception handling inside the macro might not work properly. You should avoid putting MUTATE macros around try-except clauses. For Visual Basic, "try-except" clauses corresponds to "On Error" statements.