home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 October / CMCD1004.ISO / Software / Shareware / Utilitare / pec / pec2setup.exe / pec2hooks / pec2hooks_fastimport / miscdef.inc < prev    next >
Encoding:
Text File  |  2004-06-09  |  4.4 KB  |  195 lines

  1. FAST_MOV MACRO
  2.     mov eax,ecx
  3.     sar    ecx,2
  4.     rep    movsd
  5.     add    ecx,eax
  6.     and    ecx,3
  7.     rep    movsb    
  8. ENDM
  9.  
  10. FAST_STOS MACRO
  11.     push edx
  12.     mov edx,ecx
  13.     sar ecx,2
  14.     rep stosd
  15.     add ecx,edx
  16.     and ecx,3
  17.     rep stosb    
  18.     pop edx
  19. ENDM
  20.  
  21. GET_DELTA MACRO reg
  22.         LOCAL   delta_call
  23.         call    delta_call
  24.  delta_call:
  25.         pop     reg
  26.         sub     reg,offset delta_call
  27. ENDM
  28.  
  29. ISDEBUGGERPRESENT MACRO
  30.     ;LOCAL nopelbl
  31.     ;push eax
  32.     ;xor eax,eax
  33.     ;add eax,fs:[20h]    
  34.     ;jz nopelbl    
  35.     ;dec esi
  36.  ;nopelbl:
  37.     ;pop eax
  38. ENDM
  39.  
  40. ; virtual alloc shiznit
  41. MEM_COMMIT                equ 1000h
  42. MEM_RESERVE               equ 2000h
  43. MEM_DECOMMIT              equ 4000h
  44. MEM_RELEASE               equ 8000h
  45. MEM_FREE                  equ 10000h
  46. MEM_PRIVATE               equ 20000h
  47. MEM_MAPPED                equ 40000h
  48. MEM_RESET                 equ 80000h     
  49. MEM_TOP_DOWN              equ 100000h
  50. PAGE_READWRITE            equ 04h
  51. PAGE_EXECUTE              equ 10h
  52. PAGE_EXECUTE_READ         equ 20h
  53. PAGE_EXECUTE_READWRITE    equ 40h
  54. PAGE_EXECUTE_WRITECOPY    equ 80h
  55. PAGE_GUARD                equ 100h
  56. PAGE_NOCACHE              equ 200h
  57.  
  58. EXCEPTION_RECORD struct 4
  59.     dwExceptionCode dd ?
  60.     dwExceptionFlags dd ?
  61.     pChainedRecord dd ?
  62.     pExceptionAddress dd ?
  63.     dwNumberOfParams dd ?
  64.     dwExceptionInformation dd 32 dup(?)
  65. EXCEPTION_RECORD ends
  66.  
  67. EXCEPTION_CONTINUE_EXECUTION equ 0
  68.  
  69. SetExceptionHandler MACRO reg
  70.     push     reg
  71.     assume fs:nothing
  72.     push     dword ptr fs:[0]
  73.     mov      fs:[0],esp    
  74. ENDM
  75.  
  76. UnsetExceptionHandler MACRO 
  77.     assume fs:nothing
  78.     pop    dword ptr fs:[0]
  79.     add    esp,4
  80. ENDM    
  81.  
  82. ImportDescriptor STRUCT    
  83.    iOriginalThunkTable        dd ?
  84.    iTimeDateStamp   dd ?
  85.    iForwarderChain  dd ?
  86.    iNameRva        dd ?   
  87.    iThunkTable        dd ?
  88. ImportDescriptor ENDS
  89.  
  90.   ;  DWORD   Characteristics;
  91.   ;  DWORD   TimeDateStamp;
  92.   ;  WORD    MajorVersion;
  93.   ;  WORD    MinorVersion;
  94.   ;  DWORD   Name;
  95.   ;  DWORD   Base;
  96.   ;  DWORD   NumberOfFunctions;
  97.   ;  DWORD   NumberOfNames;
  98.   ;  DWORD   AddressOfFunctions;     // RVA from base of image
  99.  ;   DWORD   AddressOfNames;         // RVA from base of image
  100. ;    DWORD   AddressOfNameOrdinals;  // RVA from base of image
  101.  
  102. ExportDirectory STRUCT 4
  103.     Characteristics dd ?
  104.     TimeDateStamp dd ?
  105.     MajorVersion dd ? 
  106.     MinorVersion dd ?
  107.     Name dd ?
  108.     Base dd ?
  109.     NumberOfFunctions dd ?
  110.     NumberOfNames dd ?
  111.     AddressOfFunctions dd ?
  112.     AddressOfNames dd ?
  113.     AddressOfNameOrdinals dd ?
  114. ExportDirectory ENDS
  115.  
  116. IMAGE_DOS_HEADER STRUCT
  117.     e_magic dw ?
  118.     e_cblp dw ?
  119.     e_cp dw ?
  120.     e_crlc dw ?
  121.     e_cparhdr dw ?
  122.     e_minalloc dw ?
  123.     e_maxalloc dw ?
  124.     e_ss dw ?
  125.     e_sp dw ?
  126.     e_csum dw ?
  127.     e_ip dw ?
  128.     e_cs dw ?
  129.     e_lfarlc dw ?
  130.     e_ovno dw ?
  131.     e_res dw ?,?,?,?
  132.     e_oemid dw ?
  133.     e_oeminfo dw ?
  134.     e_res2 dw ?,?,?,?,?,?,?,?,?,?
  135.     e_lfanew dd ?
  136. IMAGE_DOS_HEADER ENDS
  137.  
  138. IMAGE_NT_HEADER STRUCT
  139.     Signature dd ?
  140.     ;IMAGE_FILE_HEADER FileHeader;
  141.     Machine dw ?
  142.     NumberOfSections dw ?
  143.     TimeDateStamp dd ?
  144.     PointerToSymbolTable dd ?
  145.     NumberOfSymbols dd ?
  146.     SizeOfOptionalHeader dw ?
  147.     Characteristics dw ?
  148.     ;IMAGE_OPTIONAL_HEADER32 OptionalHeader;
  149.     Magic dw ?
  150.     MajorLinkerVersion db ? 
  151.     MinorLinkerVersion db ?
  152.     SizeOfCode dd ?
  153.     SizeOfInitializedData dd ?
  154.     SizeOfUninitializedData dd ?
  155.     AddressOfEntryPoint dd ?
  156.     BaseOfCode dd ?
  157.     BaseOfData dd ?
  158.     ImageBase dd ?
  159.     SectionAlignment dd ?
  160.     FileAlignment dd ?
  161.     MajorOperatingSystemVersion dw ?
  162.     MinorOperatingSystemVersion dw ?
  163.     MajorImageVersion dw ?
  164.     MinorImageVersion dw ?
  165.     MajorSubsystemVersion dw ?
  166.     MinorSubsystemVersion dw ?
  167.     Win32VersionValue dd ?
  168.     SizeOfImage dd ?
  169.     SizeOfHeaders dd ?
  170.     CheckSum dd ?
  171.     Subsystem dw ?
  172.     DllCharacteristics dw ?
  173.     SizeOfStackReserve dd ?
  174.     SizeOfStackCommit dd ?
  175.     SizeOfHeapReserve dd ?
  176.     SizeOfHeapCommit dd ?
  177.     LoaderFlags dd ?
  178.     NumberOfRvaAndSizes dd ?
  179.     DataDirectories dd ?
  180.     ;IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
  181. IMAGE_NT_HEADER ENDS
  182.  
  183. IMAGE_SECTION_HEADER STRUCT
  184.     Name db ?,?,?,?,?,?,?,?
  185.     VirtualSize dd ?
  186.     VirtualAddress dd ?
  187.     SizeOfRawData dd ?
  188.     PointerToRawData dd ?
  189.     PointerToRelocations dd ?
  190.     PointerToLinenumbers dd ?
  191.     NumberOfRelocations dw ?
  192.     NumberOfLinenumbers dw ?
  193.     Characteristics dd ?
  194. IMAGE_SECTION_HEADER ENDS
  195.