Contents

Code Protection



DotFix NiceProtect offers exceptional features, including DotFix Morphing(tm) and DotFix Virtualization(tm), which provide unique protection for your code against decompilation and analysis. To start use these features, enable MAP file generation in your compiler's settings and rebuild your application. After completing the process, simply open the newly created EXE file with DotFix NiceProtect to view all of the project's functions by selecting the Virtualize tab.

Now mark the functions you want to protect.

DotFix NiceProtect Virtualize Functions

Use a single mouse click to mark the function for protection and double-click to open the disassembler window.

DotFix NiceProtect Disassembler

DotFix NiceProtect also has a unique feature. Switch on the "Virtualized" option in the disassembler to view both the original source code and the morphed / virtualized code.

DotFix NiceProtect Virtualize Options

Note that each switching between the original and virtualized codes will change the virtualized variant, because the metamorphing engine generates polymorphous instructions and cycles differently each time, making it difficult for decompilers to analyze your code.

DotFix NiceProtect Disassembler 2

Function virtualization is highly effective in protecting against decompilation, especially for critical VCL functions in Delphi and ree Pascal, which are directly present in the program file and targeted by decompilers via signatures.

Advice: If you want to protect specific parts of a function not from the decompiling but from the analysis, we recommend you to use markers from SDK, because the DotFix NiceProtect protects not the whole function but only the limited number of commands from its beginning (till the first cycle or jump backwards). If you're using markers, you will protect only selected critical part of code.

 

Copyright © 2001 - 2024, DotFix Software