⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 win32.inc

📁 Cracker终结者——提供最优秀的软件保护技术
💻 INC
📖 第 1 页 / 共 5 页
字号:
;*************************************************************************
;
;       WIN32.INC - Win32 assembly language structures & constants
;
;
;*************************************************************************
;
; Modified , enhanced by G-RoM.
;
;*************************************************************************
UNICODE=0

UCHAR   EQU <db>
USHORT  EQU <dw>  ; used only if we really need 16 bits
UINT    EQU <dd>  ; 32 bits for WIN32
ULONG   EQU <dd>
HANDLE  EQU <dd>
BOOL	typedef DWORD
LPSTR	typedef DWORD
LPBYTE	typedef DWORD
LPVOID	typedef	DWORD
LPCSTR	typedef	DWORD
L 	equ <LARGE>
WINAPI	EQU PROTO STDCALL
NULL	EQU 0
FALSE	EQU 0
TRUE	EQU 1
;
;------------------------------------------------------------------------------
;
; =====================
; CreateProcess() flags
; =====================
;
DEBUG_PROCESS			equ	00000001h
DEBUG_ONLY_THIS_PROCESS		equ	00000002h
CREATE_SUSPENDED		equ	00000004h
DETACHED_PROCESS		equ	00000008h
CREATE_NEW_CONSOLE		equ	00000010h
NORMAL_PRIORITY_CLASS		equ	00000020h
IDLE_PRIORITY_CLASS		equ	00000040h
HIGH_PRIORITY_CLASS		equ	00000080h
REALTIME_PRIORITY_CLASS		equ	00000100h
;
CREATE_NEW_PROCESS_GROUP	equ	00000200h
CREATE_UNICODE_ENVIRONMENT	equ	00000400h
CREATE_SEPARATE_WOW_VDM		equ	00000800h
CREATE_SHARED_WOW_VDM		equ	00001000h
CREATE_DEFAULT_ERROR_MODE	equ	04000000h
CREATE_NO_WINDOW		equ	08000000h
;
PROFILE_USER			equ	10000000h
PROFILE_KERNEL			equ	20000000h
PROFILE_SERVER			equ	40000000h

THREAD_BASE_PRIORITY_LOWRT 	EQU 15;  { value that gets a thread to LowRealtime-1 }
THREAD_BASE_PRIORITY_MAX 	EQU 2;     { maximum thread base priority boost }
THREAD_BASE_PRIORITY_MIN 	EQU -2;    { minimum thread base priority boost }
THREAD_BASE_PRIORITY_IDLE 	EQU -15;  { value that gets a thread to idle }

SYNCHRONIZE 			EQU 00100000h;
STANDARD_RIGHTS_REQUIRED 	EQU 000F0000h;
EVENT_MODIFY_STATE 		EQU 0002h;
EVENT_ALL_ACCESS 		EQU (STANDARD_RIGHTS_REQUIRED + SYNCHRONIZE + 3h);
MUTANT_QUERY_STATE 		EQU 0001h;
MUTANT_ALL_ACCESS 		EQU (STANDARD_RIGHTS_REQUIRED + SYNCHRONIZE + MUTANT_QUERY_STATE);

PROCESS_TERMINATE         	EQU 0001h;
PROCESS_CREATE_THREAD     	EQU 0002h;
PROCESS_VM_OPERATION      	EQU 0008h;
PROCESS_VM_READ           	EQU 0010h;
PROCESS_VM_WRITE          	EQU 0020h;
PROCESS_DUP_HANDLE        	EQU 0040h;
PROCESS_CREATE_PROCESS    	EQU 0080h;
PROCESS_SET_QUOTA         	EQU 0100h;
PROCESS_SET_INFORMATION   	EQU 0200h;
PROCESS_QUERY_INFORMATION 	EQU 0400h;
PROCESS_ALL_ACCESS        	EQU (STANDARD_RIGHTS_REQUIRED + SYNCHRONIZE + 0FFFh);
;
;------------------------------------------------------------------------------
;
; ===================
; thread access flags
; ===================
;
THREAD_TERMINATE		equ	0001h
THREAD_SUSPEND_RESUME		equ	0002h
THREAD_GET_CONTEXT		equ	0008h
THREAD_SET_CONTEXT		equ	0010h
THREAD_SET_INFORMATION		equ	0020h
THREAD_QUERY_INFORMATION	equ	0040h
THREAD_SET_THREAD_TOKEN		equ	0080h
THREAD_IMPERSONATE		equ	0100h
THREAD_DIRECT_IMPERSONATION	equ	0200h
;
THREAD_ALL_ACCESS		equ	STANDARD_RIGHTS_REQUIRED+\
					SYNCHRONIZE+\
					03FFh
;
;------------------------------------------------------------------------------
;
; =================
; thread priorities
; =================
;
THREAD_BASE_PRIORITY_IDLE	equ	-15
THREAD_BASE_PRIORITY_MIN	equ	 -2
THREAD_BASE_PRIORITY_MAX	equ	  2
THREAD_BASE_PRIORITY_LOWRT	equ	 15
;
THREAD_PRIORITY_LOWEST		equ	THREAD_BASE_PRIORITY_MIN
THREAD_PRIORITY_BELOW_NORMAL	equ	THREAD_PRIORITY_LOWEST+1
THREAD_PRIORITY_NORMAL		equ	  0
THREAD_PRIORITY_ABOVE_NORMAL	equ	THREAD_PRIORITY_HIGHEST-1
THREAD_PRIORITY_HIGHEST		equ	THREAD_BASE_PRIORITY_MAX
;
THREAD_PRIORITY_TIME_CRITICAL	equ	THREAD_BASE_PRIORITY_LOWRT
THREAD_PRIORITY_IDLE		equ	THREAD_BASE_PRIORITY_IDLE
;
THREAD_PRIORITY_ERROR_RETURN	equ	 -1
;
;
;------------------------------------------------------------------------------
;
; =================
; wait status codes
; =================
;
WAIT_FAILED			equ	-1
WAIT_OBJECT_0			equ	STATUS_WAIT_0
;
WAIT_ABANDONED			equ	STATUS_ABANDONED_WAIT_0
WAIT_ABANDONED_0		equ	STATUS_ABANDONED_WAIT_0
;
WAIT_TIMEOUT			equ	STATUS_TIMEOUT
WAIT_IO_COMPLETION		equ	STATUS_USER_APC
STILL_ACTIVE			equ	STATUS_PENDING
;
MAXIMUM_WAIT_OBJECTS		equ	 64
MAXIMUM_SUSPEND_COUNT		equ	127
INFINITE			equ	 -1
;
;------------------------------------------------------------------------------
;
; =================
; file access types
; =================
;
GENERIC_ALL			equ	10000000h
GENERIC_EXECUTE			equ	20000000h
GENERIC_WRITE			equ	40000000h
GENERIC_READ			equ	80000000h
;
GENERIC_READWRITE		equ	GENERIC_READ+GENERIC_WRITE
;
;------------------------------------------------------------------------------
;
; ===============
; file attributes
; ===============
;
FILE_ATTRIBUTE_READONLY		equ	00000001h
FILE_ATTRIBUTE_HIDDEN		equ	00000002h
FILE_ATTRIBUTE_SYSTEM		equ	00000004h
FILE_ATTRIBUTE_DIRECTORY	equ	00000010h
FILE_ATTRIBUTE_ARCHIVE		equ	00000020h
FILE_ATTRIBUTE_NORMAL		equ	00000080h
FILE_ATTRIBUTE_TEMPORARY	equ	00000100h
FILE_ATTRIBUTE_COMPRESSED	equ	00000800h
;
;------------------------------------------------------------------------------
;
; ===================
; file creation flags
; ===================
;
FILE_FLAG_WRITE_THROUGH		equ	80000000h
FILE_FLAG_OVERLAPPED		equ	40000000h
FILE_FLAG_NO_BUFFERING		equ	20000000h
FILE_FLAG_RANDOM_ACCESS		equ	10000000h
FILE_FLAG_SEQUENTIAL_SCAN	equ	08000000h
FILE_FLAG_DELETE_ON_CLOSE	equ	04000000h
FILE_FLAG_BACKUP_SEMANTICS	equ	02000000h
FILE_FLAG_POSIX_SEMANTICS	equ	01000000h
;
;------------------------------------------------------------------------------
;
; ==================
; file notifications
; ==================
;
FILE_NOTIFY_CHANGE_FILE_NAME	equ	0001h
FILE_NOTIFY_CHANGE_DIR_NAME	equ	0002h
FILE_NOTIFY_CHANGE_ATTRIBUTES	equ	0004h
FILE_NOTIFY_CHANGE_SIZE		equ	0008h
FILE_NOTIFY_CHANGE_LAST_WRITE	equ	0010h
FILE_NOTIFY_CHANGE_SECURITY	equ	0100h
;
;------------------------------------------------------------------------------
;
; ================
; file share modes
; ================
;
FILE_SHARE_NONE			equ	0000h
FILE_SHARE_READ			equ	0001h
FILE_SHARE_WRITE		equ	0002h
;
FILE_SHARE_READWRITE		equ	FILE_SHARE_READ+FILE_SHARE_WRITE
;
; ====================
; CreateFile() actions
; ====================
;
CREATE_NEW			equ	1
CREATE_ALWAYS			equ	2
OPEN_EXISTING			equ	3
OPEN_ALWAYS			equ	4
TRUNCATE_EXISTING		equ	5
;
;------------------------------------------------------------------------------
;
; =================
; file system flags
; =================
;
FILE_CASE_SENSITIVE_SEARCH	equ	00000001h
FILE_CASE_PRESERVED_NAMES	equ	00000002h
FILE_UNICODE_ON_DISK		equ	00000004h
FILE_PERSISTENT_ACLS		equ	00000008h
FILE_FILE_COMPRESSION		equ	00000010h
FILE_VOLUME_IS_COMPRESSED	equ	00008000h
;
FS_CASE_SENSITIVE		equ	FILE_CASE_SENSITIVE_SEARCH
FS_CASE_IS_PRESERVED		equ	FILE_CASE_PRESERVED_NAMES
FS_UNICODE_STORED_ON_DISK	equ	FILE_UNICODE_ON_DISK
FS_PERSISTENT_ACLS		equ	FILE_PERSISTENT_ACLS
FS_FILE_COMPRESSION		equ	FILE_FILE_COMPRESSION
FS_VOL_IS_COMPRESSED		equ	FILE_VOLUME_IS_COMPRESSED

;
;------------------------------------------------------------------------------
;
; ========================
; SetFilePointer() methods
; ========================
;
FILE_BEGIN			equ	0
FILE_CURRENT			equ	1
FILE_END			equ	2
;
;------------------------------------------------------------------------------
;
; ===================
; global memory flags
; ===================
;
GMEM_FIXED			equ	0000h
GMEM_MOVEABLE			equ	0002h
GMEM_NOCOMPACT			equ	0010h
GMEM_NODISCARD			equ	0020h
GMEM_ZEROINIT			equ	0040h
GMEM_MODIFY			equ	0080h
GMEM_DISCARDABLE		equ	0100h
GMEM_NOT_BANKED			equ	1000h
GMEM_SHARE			equ	2000h
GMEM_DDESHARE			equ	2000h
GMEM_NOTIFY			equ	4000h
GMEM_INVALID_HANDLE		equ	8000h
;
GMEM_VALID_FLAGS		equ	7F72h
GMEM_LOWER			equ	GMEM_NOT_BANKED
;
; =================
; memory attributes
; =================
;
PAGE_NOACCESS			equ	00000001h
PAGE_READONLY			equ	00000002h
PAGE_READWRITE			equ	00000004h
PAGE_WRITECOPY			equ	00000008h
PAGE_EXECUTE			equ	00000010h
PAGE_EXECUTE_READ		equ	00000020h
PAGE_EXECUTE_READWRITE		equ	00000040h
PAGE_EXECUTE_WRITECOPY		equ	00000080h
PAGE_GUARD			equ	00000100h
PAGE_NOCACHE			equ	00000200h
;
;*******************************************************************
;
;       Rectangle
;
;*******************************************************************

RECT    struc
        rd_left          UINT ?
        rd_top           UINT ?
        rd_right         UINT ?
        rd_bottom        UINT ?
RECT    ends

;*******************************************************************
;
;  Window Class structure
;
;*******************************************************************

_OSVERSIONINFO EQU        4+4+4+4+4+128
OSVERSIONINFO struc
    dwOSVersionInfoSize   DWORD ?
    dwMajorVersion        DWORD ?
    dwMinorVersion        DWORD ?
    dwBuildNumber         DWORD ?
    dwPlatformId          DWORD ?
    szCSDVersion          BYTE 128 dup(?)
OSVERSIONINFO ends

WNDCLASS struc
        clsStyle          UINT     ?   ; class style
        clsLpfnWndProc    ULONG    ?
        clsCbClsExtra     UINT     ?
        clsCbWndExtra     UINT     ?
        clsHInstance      UINT     ?   ; instance handle
        clsHIcon          UINT     ?   ; class icon handle
        clsHCursor        UINT     ?   ; class cursor handle
        clsHbrBackground  UINT     ?   ; class background brush
        clsLpszMenuName   ULONG    ?   ; menu name
        clsLpszClassName  ULONG    ?   ; far ptr to class name
WNDCLASS ends

WNDCLASSEX_ EQU 4*12
WNDCLASSEXA		STRUCT
	wc_cbSize		UINT		?
	wc_style		UINT		?
	wc_lpfnWndProc		DWORD		?
	wc_cbClsExtra		SDWORD		?
	wc_cbWndExtra		SDWORD		?
	wc_hInstance		DWORD		?
	wc_hIcon		DWORD		?
	wc_hCursor		DWORD		?
	wc_hbrBackground	DWORD 		?
	wc_lpszMenuName		LPCSTR		?
	wc_lpszClassName	LPCSTR		?
	wc_hIconSm		DWORD		?
WNDCLASSEXA		ENDS
WNDCLASSEX		TEXTEQU	<WNDCLASSEXA>

DLGWINDOWEXTRA		EQU	00000001Eh

PAINTSTRUCT STRUC
    PShdc         UINT             ?
    PSfErase      UINT             ?
    PSrcPaint     UCHAR            size RECT dup(?)
    PSfRestore    UINT             ?
    PSfIncUpdate  UINT             ?
    PSrgbReserved UCHAR            16 dup(?)
PAINTSTRUCT ENDS

OVERLAPPED		STRUCT
	Internal	DWORD	?
	InternalHigh	DWORD	?
	_Offset		DWORD	?
	OffsetHigh	DWORD	?
	hEvent		HANDLE	?
OVERLAPPED		ENDS
LPOVERLAPPED		TYPEDEF	PTR OVERLAPPED

NMHDR	struct
 hwndFrom	DWORD   ?
 idFrom	UINT    ?
 Code	UINT	?
NMHDR	ends

POINT	struct
 x		DWORD 	?
 y		DWORD 	?
POINT	ends

NM_LISTVIEW	struct
 hdr	NMHDR <?>
 iItem	DWORD 	?
 iSubItem 	DWORD 	?
 uNewState 	UINT 	?
 uOldState 	UINT 	?
 uChanged 	UINT 	?
 ptAction 	POINT <?>
 lParam 	DWORD 	?
NM_LISTVIEW	ends

MSG			struct
ms_hwnd			DWORD	  0		;window handle
ms_message		UINT	  0		;message id
ms_wParam		DWORD 	  0		;additional parameter
ms_lParam		DWORD 	  0		;additional parameter
ms_time			DWORD	  0		;time stamp
ms_x			DWORD  	  0		;x coordinate
ms_y			DWORD  	  0		;y coordinate
MSG			ends
MSG_			equ	  4+4+4+4+4+4+4

MINMAXINFO struc
  res_x               dd ?
  res_y               dd ?
  maxsize_x           dd ?
  maxsize_y           dd ?
  maxposition_x       dd ?
  maxposition_y       dd ?
  mintrackposition_x  dd ?
  mintrackposition_y  dd ?
  maxtrackposition_x  dd ?
  maxtrackposition_y  dd ?
MINMAXINFO ends

LF_FACESIZE     EQU     32

ANSI_CHARSET    = 0
DEFAULT_CHARSET = 1
SYMBOL_CHARSET  = 2
OEM_CHARSET     = 255

LOGFONT 		STRUC
    lfHeight          dd   ?
    lfWidth           dd   ?
    lfEscapement      dd   ?
    lfOrientation     dd   ?
    lfWeight          dd   ?
    lfItalic          db   ?
    lfUnderline       db   ?
    lfStrikeOut       db   ?
    lfCharSet         db   ?
    lfOutPrecision    db   ?
    lfClipPrecision   db   ?
    lfQuality         db   ?
    lfPitchAndFamily  db   ?
    lfFaceName        db   LF_FACESIZE dup(?)
LOGFONT 		ENDS

PROCESSINFORMATION	struct
pi_hProcess		HANDLE	  0		;process handle
pi_hThread		HANDLE	  0		;thread handle
pi_dwProcessId		DWORD	  0		;process id
pi_dwThreadId		DWORD	  0		;thread id
PROCESSINFORMATION	ends
PROCESSINFORMATION_	equ	  4+4+4+4

STARTUPINFO_		equ	  4+4+4+4+4+4+4+4+4+4+4+4+2+2+4+4+4+4
STARTUPINFO		struct
si_cb			DWORD	  STARTUPINFO_  ;structure size
si_lpReserved		LPSTR	  0		;(reserved)
si_lpDesktop		LPSTR	  0		;desktop name
sl_lpTitle		LPSTR	  0		;console window title
si_dwX			DWORD	  0		;window origin (column)
si_dwY			DWORD	  0		;window origin (row)
si_dwXSize		DWORD	  0		;window width
si_dwYSize		DWORD	  0		;window height

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -