News

VMProtect 1.1

December 8th, 2005
FIXES

Fixed errors occurred while: emulation of SBB (wrong state of some flags); emulation of CMOVxx, CMPXCHG and CMPXCHG8b (when the second operand was addressed using ESP or a DWORD value).


NEW FEATURES

Added support for SEH in VB6 (native).

Added support for MAP-files generated by IDA.

Added an option for batch adding of procedures.

Added displaying of links to commands directly in the list of procedures.

Added a new option: “Encrypt registers on jumps”.


VMProtect 1.09

October 17th, 2005
IMPROVEMENTS

End of procedure detection process while disassembling of cycles is improved.

For UPX compatibility, Shareable flag of Writeable sections is cleared (if the old relocation table is used for VM needs).


VMProtect 1.08

October 4th, 2005
IMPROVEMENTS

Big fragments of code disassembly is sped up.

Metamorphism mechanism of bytecode interpreter is improved.


VMProtect 1.07

August 18th, 2005
FIXES

Fixed errors occurred when: working with PE files (when code section virtual size was equal to zero); obfuscating FPU commands (errors led to wrong results); disassembly (CWD was detected instead of CWDE); emulation of ROL and ROR commands (if the argument was 1-byte).


NEW FEATURES

Added support for SSE2 command group.


VMProtect 1.06

August 1th, 2005
FIXES

Fixed an error corrupting the A flag state after emulating SUB, CMP, DEC, NEG, CMPXCHG, SCAS and CMPS commands.

Fixed an error occurred when working with an unaligned file.


NEW FEATURES

Added support for BSF, BSR and CMPXCHG8b instructions.

For multi-threaded applications, you can specify a memory allocation procedure for the VM interpreter (memory allocation procedure must be defined as fastcall).


VMProtect 1.05

June 14th, 2005
NEW FEATURES

Added support for FUCOMPP and FCMOVxx instructions.

The type of strings (ANSI/Unicode/Pascal) and comments for structure fields made by compilers are now shown when looking at parts of the code.

Added a metamorphism procedure for the bytecode interpreter.

Added new compilation options: “Bytecode encryption” and “Strip relocations (for EXE files only)”.

Removed the “Obfuscate bytecode” option (now always on).


VMProtect 1.04

May 14th, 2005
FIXES

Fixed an error occurred while detecting SEH handlers for C++.


IMPROVEMENTS

Bytecode obfuscator is totally reworked.


NEW FEATURES

Relocations are highlighted in the code now.


VMProtect 1.03

April 11th, 2005
NEW FEATURES

“Free space” from original parts of code is used to store the bytecode.

Added detection of “short” pascal-format strings (first byte defines the length of a string).


VMProtect 1.02

March 25th, 2005
FIXES

Fixed bugs related to execution of online-commands in DLL/SYS.


IMPROVEMENTS

Changed the calculation algorithm of bytecode checksum.


NEW FEATURES

Added an option “VM interpreter integrity control” (also works as an anti-debug technique if the interpreter is being debugged and the debugger uses INT 03 as breakpoints).

Usage of “old” relocation tables to store the bytecode.


VMProtect 1.01

March 17th, 2005
FIXES

Fixed an error occurred when files with relocations were created(the error arose during operation of DLL/SYS-files in Windows 95/98/Me).

Fixed small issues in the disassembler.


NEW FEATURES

Added support for instructions: F2XM1, FABS, FCLEX, FCOS, FDECSTP, FINCSTP, FINIT, FLDCW, FLDLN2, FLDLG2, FPREM, FREM1, FPTAN, FRNDINT, FSIN, FSTCW, FTST, FYL2X, FPATAN, FLDZ, FISTP.

Added support for MAP-files of Borland C Builder.

Now you can select the language of the interface and messages (Russian and English are available).