VMProtect/sdk/VMProtectSDK.inc

69 lines
2.2 KiB
PHP

; protection
VMProtectBegin PROTO :DWORD
VMProtectBeginVirtualization PROTO :DWORD
VMProtectBeginMutation PROTO :DWORD
VMProtectBeginUltra PROTO :DWORD
VMProtectBeginVirtualizationLockByKey PROTO :DWORD
VMProtectBeginUltraLockByKey PROTO :DWORD
VMProtectEnd PROTO
; utils
VMProtectIsProtected PROTO
VMProtectIsDebuggerPresent PROTO :DWORD
VMProtectIsVirtualMachinePresent PROTO
VMProtectIsDebuggerPresent PROTO :DWORD
VMProtectDecryptStringA PROTO :DWORD
VMProtectDecryptStringW PROTO :DWORD
VMProtectFreeString PROTO :DWORD
; licensing
SERIAL_STATE_SUCCESS equ 0
SERIAL_STATE_FLAG_CORRUPTED equ 0x00000001
SERIAL_STATE_FLAG_INVALID equ 0x00000002
SERIAL_STATE_FLAG_BLACKLISTED equ 0x00000004
SERIAL_STATE_FLAG_DATE_EXPIRED equ 0x00000008
SERIAL_STATE_FLAG_RUNNING_TIME_OVER equ 0x00000010
SERIAL_STATE_FLAG_BAD_HWID equ 0x00000020
SERIAL_STATE_FLAG_MAX_BUILD_EXPIRED equ 0x00000040
VMProtectDate STRUCT
wYear WORD ?
bMonth BYTE ?
bDay BYTE ?
VMProtectDate ENDS
VMProtectSerialNumberData STRUCT
nState DWORD ? ; VMProtectSerialStateFlags
wUserName WCHAR[256] ; user name
wEMail WCHAR[256] ; email
dtExpire VMProtectDate <> ; date of serial number expiration
dtMaxBuild VMProtectDate <> ; max date of build, that will accept this key
bRunningTime DWORD ? ; running time in minutes
nUserDataLength BYTE ? ; length of user data in bUserData
bUserData BYTE[255] ? ; up to 255 bytes of user data
VMProtectSerialNumberData ENDS
VMProtectSetSerialNumber PROTO :DWORD
VMProtectGetSerialNumberState PROTO
VMProtectGetSerialNumberData PROTO :DWORD,:DWORD
VMProtectGetCurrentHWID PROTO :DWORD,:DWORD
; activation
ACTIVATION_OK equ 0
ACTIVATION_SMALL_BUFFER equ 1
ACTIVATION_NO_CONNECTION equ 2
ACTIVATION_BAD_REPLY equ 3
ACTIVATION_BANNED equ 4
ACTIVATION_CORRUPTED equ 5
ACTIVATION_BAD_CODE equ 6
ACTIVATION_ALREADY_USED equ 7
ACTIVATION_SERIAL_UNKNOWN equ 8
ACTIVATION_NOT_AVAILABLE equ 9
VMProtectActivateLicense PROTO :DWORD,:DWORD,:DWORD
VMProtectDeactivateLicense PROTO :DWORD
VMProtectGetOfflineActivationString PROTO :DWORD,:DWORD,:DWORD
VMProtectGetOfflineDeactivationString PROTO :DWORD,:DWORD,:DWORD
; libs
includelib VMProtectSDK32.lib