News

VMProtect 2.0

October 11th, 2009
FIXES

Fixed disassembly and virtualization bugs of CALL FWORD PTR [XXXX] and JMP FWORD PTR [XXXX] commands.

An error is fixed in SenseLock Edition occurred when the serial number is asked after the standard PIN of a user has changed.

Fixed an error occurred during virtualization of SWITCH in х64 applications.

Fixed an error occurred while disassembling commands: ROL, ROR, RCL, RCR, SHL, SHR, SAL and SAR, with the REX prefix in х64 applications.

Fixed an error occurred during virtualization of the CMOVxx command.

Fixed small issues.


IMPROVEMENTS

The help file in Russian is updated.

The help file in English is updated.


NEW FEATURES

Added the licensing system (available only in Ultimate version).

New API are added to the SDK – VMProtectDecryptStringA and VMProtectDecryptStringW.

The script class TVMProcedure now has a new property CompilationOptions.

The script class TVMProcedure now has properties SELicense and SEVersion (available in SenseLock Edition only).

The script class TVMProtector has new properties added: VMSectionName and VMExecutorCount.

The script class TVMProtector has new properties added: SEMasterPasswordSEUserPINSEKeyIDSELicense and SEVersion (available in SenseLock Edition only).

The option “Create online commands dynamically” is removed.


VMProtect 1.81

June 21st, 2009
FIXES

Fixed an error occurred during execution of mutated code on Pentium 4 processors.

Fixed an error occurred during execution of virtualized code on some Athlon processors.

Fixed errors occurred during disassembly and virtualization of exception handler structures with an exception filter (for program on Delphi and Borland C++ Builder).

Fixed an error occurred when using several VM in 64-bit files.

Fixed small issues.


IMPROVEMENTS

Enhanced detection of marker names (for programs on Visual C).

Significantly reduced memory consumption during compilation.

The “HTML” resource is not packed now.

The help file in Russian is updated.


NEW FEATURES

Added wildcard search of procedures in the “Master” mode.

Added new packing mode featuring higher compression rate.

Added support for files with TLS callbacks.

New API is added to the SDK – VMProtectIsValidImageCRC.


VMProtect 1.8

April 3rd, 2009
FIXES

Fixed errors occurred during import protection in SYS files.

Fixed errors occurred during memory protection in DLL/SYS files.

Fixed errors occurred when using multiple VM in DLL/SYS-files.

Fixed an error occurred during mutation of the code with exception handlers.

Fixed an error occurred when memory protection and watermarks were used simultaneously.

Fixed small bugs.


IMPROVEMENTS

Improved detection of references to marked strings (you don’t have to mark every reference to a protected string now).

Improved import protection.

Improved debugger detection.

The help file in Russian is updated.


NEW FEATURES

The GUI version now allows saving project files under different names.

Now you can open project files.

Added Sandboxie detection.

Added support for files compiled with the /SAFESEH key.

Added support for CodeGear 2009.

Now you can have named markers (when VMProtectBegin/VMProtectBeginMutation/VMProtectBeginVirtualization/VMProtectBeginUltra from VMProtectSDKxx.dll/VMProtectDDKxx.sys are used).

New API are added to the SDK (VMProtectIsDebuggerPresent and VMProtectIsVirtualMachinePresent).

A new utility was added to SenseLock Edition – “Remote update and licensing system”.

SenseLock Edition now has key id lock.


VMProtect 1.7

November 4th, 2008
FIXES

Sections with SHAREABLE+WRITABLE flags are not packed now.

Fixed small issues.


IMPROVEMENTS

Improved import protection for SYS files.

Improved packing of SYS files (packed sections are not flagged with WRITABLE any more).

Improved debugger detection.


NEW FEATURES

Added the “Memory protection” option (this option prevent changes to be made to memory while the application is running).

Added the “Detect virtualization tools (VMware/Virtual PC)” option.

The script class TPEFile now has a property EntryPoint.


VMProtect 1.65

August 9th, 2008
FIXES

Fixed small issues.


IMPROVEMENTS

Improved import protection.

Improved debugger detection.


NEW FEATURES

Added identification of unpaired markers (unpaired markers are available in the general list of objects).

Added markers to apply a pre-defined compilation type: VMProtectBeginVirtualization, VMProtectBeginMutation and VMProtectBeginUltra.

Added Chinese Traditional language.


VMProtect 1.64

July 1st, 2008
FIXES

Fixed a bug occurred during execution of a packed file, if it had “TYPELIB”, “REGISTRY” and “MUI” resources.

Fixed the R6002 error occurred during execution of a packed file (for programs written on Visual C).

Fixed a bug occurred when the “Import protection” option was used in 64-bit SYS files.

Fixed small issues.


IMPROVEMENTS

The settings file is now saved to %APPDATA%/PolyTech/VMProtect.

Improved import protection.


NEW FEATURES

Added the option “Virtual machines” (different virtualized fragments of code are executed on different virtual machines with different architecture).

Added the option “Debugger detection” (if a debugger is detected during the protected application execution, the app shows a corresponding message and closes).

The script class TPESection now has a property IncludedInPacking.

Added support for IRETD command.

Added an example of using markers in Lazarus.


VMProtect 1.63

March 26th, 2008
FIXES

Fixed an error occurred when using the “Import protection” option.

Fixed small issues.


IMPROVEMENTS

Improved integrity control of VM objects.


NEW FEATURES

A new event was added to the script: OnBeforePackFile.

The script class TPEFile now has a new property Handle.

Added an example of using markers in Free Pascal.


VMProtect 1.62

February 17th, 2008
FIXES

Fixed errors occurring when using the “Import protection” option.

Fixed an error occurred when handling an exception in the TRY/EXCEPT/END block in the “Ultra” mode (for programs written on Delphi and Borland C++ Builder).


IMPROVEMENTS

Improved import protection for SYS files.


NEW FEATURES

Every object of a project now can have its own compilation options for individual performance tuning (individual options are configured in the project tree).

Added the “Move resources to the end of the file” option.

Added an example of using extended markers (see Examples\Scripts\UseExtMarkers).


VMProtect 1.61

January 13th, 2008
FIXES

Fixed an error occurred when starting packed files under Windows 95/98.

Fixed small issues.


NEW FEATURES

An ability to pass a file name via the command line is added to the Lite version.

A history is added in the “Master” mode.

Language selection is added in the “Master” mode.

Added the “Import protection” option (recommended for use along with packing of the output file)

In the console version, a new parameter “-we” is added(with this parameter all warnings are displayed as error)

A new class TPEResourceRecords is added to the script

The script class TPEFile now has a new property ResourceRecords


VMProtect 1.6

December 1st, 2007
FIXES

Fixed small issues.


IMPROVEMENTS

Improved work with identical strings(now identical strings are displayed as a single object with multiple elements inside).


NEW FEATURES

Added an option to pack the output file.

A new class TPEExportRecords is added to the script.

The script class TPEFile now has a property ExportRecords.

A new event OnBeforeSaveFile is added to the script.

The help file in Chinese is added (translation by Wang Xiaopeng).

Added MAP-file date/time check. (If modification date and time of the MAP-file differ from those of the protected file, the MAP-file is not loaded)