Difference between revisions of "Lua:AOBScan"

From Cheat Engine
Jump to navigation Jump to search
m
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Lua_Function]]
+
[[Category:Lua]]
 
'''function''' AOBScan('''''...''''')
 
'''function''' AOBScan('''''...''''')
  
 
'''function''' AOBScan(''AOBString'', ''ProtectionFlags'' OPTIONAL, ''AlignmentType'' OPTIONAL, ''AlignmentParam'' HALFOPTIONAL)
 
'''function''' AOBScan(''AOBString'', ''ProtectionFlags'' OPTIONAL, ''AlignmentType'' OPTIONAL, ''AlignmentParam'' HALFOPTIONAL)
  
Scans the currently opened process and returns a StringList object containing all the results.  
+
Scans the currently opened process and returns a [[Lua:Class:Stringlist|StringList]] object containing all the results.  
 
Don't forget to free this list when done.
 
Don't forget to free this list when done.
 
Byte value of higher than 255 or anything not an integer will be seen as a wildcard.
 
Byte value of higher than 255 or anything not an integer will be seen as a wildcard.
Line 14: Line 14:
 
!align="left"|Parameter
 
!align="left"|Parameter
 
!align="left"|Type
 
!align="left"|Type
!style="width: 80%;background-color:white;" align="left"|Description
+
!style="width: 80%;" align="left"|Description
 
|-
 
|-
 
|...
 
|...
Line 25: Line 25:
 
!align="left"|Parameter
 
!align="left"|Parameter
 
!align="left"|Type
 
!align="left"|Type
!style="width: 80%;background-color:white;" align="left"|Description
+
!style="width: 80%;" align="left"|Description
 
|-
 
|-
 
|AOBString
 
|AOBString
Line 63: Line 63:
  
  
== See also ==
+
{{LuaSeeAlso}}
* [[Lua]]
 
* [[Help_File:Script engine|Script engine]]
 
  
 
=== Related Functions ===
 
=== Related Functions ===
* [[autoAssemble]]
+
* [[Lua:autoAssemble|autoAssemble]]
* [[disassemble]]
+
* [[Lua:disassemble|disassemble]]
* [[getInstructionSize]]
+
* [[Lua:getInstructionSize|getInstructionSize]]
* [[getPreviousOpcode]]
+
* [[Lua:getPreviousOpcode|getPreviousOpcode]]
* [[allocateSharedMemory]]
+
* [[Lua:allocateSharedMemory|allocateSharedMemory]]
* [[mapMemory]]
+
* [[Lua:mapMemory|mapMemory]]
* [[unmapMemory]]
+
* [[Lua:unmapMemory|unmapMemory]]
* [[readBytes]]
+
* [[Lua:readBytes|readBytes]]
* [[readPointer]]
+
* [[Lua:readPointer|readPointer]]
* [[writeBytes]]
+
* [[Lua:writeBytes|writeBytes]]
* [[readBytesLocal]]
+
* [[Lua:readBytesLocal|readBytesLocal]]
* [[readPointerLocal]]
+
* [[Lua:readPointerLocal|readPointerLocal]]
* [[writeBytesLocal]]
+
* [[Lua:writeBytesLocal|writeBytesLocal]]
* [[wordToByteTable]]
+
* [[Lua:wordToByteTable|wordToByteTable]]
* [[dwordToByteTable]]
+
* [[Lua:dwordToByteTable|dwordToByteTable]]
* [[qwordToByteTable]]
+
* [[Lua:qwordToByteTable|qwordToByteTable]]
* [[floatToByteTable]]
+
* [[Lua:floatToByteTable|floatToByteTable]]
* [[doubleToByteTable]]
+
* [[Lua:doubleToByteTable|doubleToByteTable]]
* [[stringToByteTable]]
+
* [[Lua:stringToByteTable|stringToByteTable]]
* [[wideStringToByteTable]]
+
* [[Lua:wideStringToByteTable|wideStringToByteTable]]
* [[byteTableToWord]]
+
* [[Lua:byteTableToWord|byteTableToWord]]
* [[byteTableToDword]]
+
* [[Lua:byteTableToDword|byteTableToDword]]
* [[byteTableToQword]]
+
* [[Lua:byteTableToQword|byteTableToQword]]
* [[byteTableToFloat]]
+
* [[Lua:byteTableToFloat|byteTableToFloat]]
* [[byteTableToDouble]]
+
* [[Lua:byteTableToDouble|byteTableToDouble]]
* [[byteTableToString]]
+
* [[Lua:byteTableToString|byteTableToString]]
* [[byteTableToWideString]]
+
* [[Lua:byteTableToWideString|byteTableToWideString]]

Latest revision as of 02:51, 18 May 2019

function AOBScan(...)

function AOBScan(AOBString, ProtectionFlags OPTIONAL, AlignmentType OPTIONAL, AlignmentParam HALFOPTIONAL)

Scans the currently opened process and returns a StringList object containing all the results. Don't forget to free this list when done. Byte value of higher than 255 or anything not an integer will be seen as a wildcard.


Function Parameters[edit]

Parameter Type Description
... ... Bytes to scan for seperated as arguments


Parameter Type Description
AOBString string A string of bytes, as hex, to scan for
ProtectionFlags string A string of flags used to set protection type of memory to be scanned
AlignmentType integer Used with 'AlignmentParam' to set scan alignment
AlignmentParam string A string which either holds the value the addresses must be dividable by or what the last digits of the address must be


  • protectionflags is a string:
    • Add a + to indicate that flag MUST be set and a - to indicate that that flag MUST NOT be set. (* sets it to don't care)
    • X = Executable
    • W = Writable memory
    • C = Copy On Write.

Examples:

 +W-C = Writable memory exluding copy on write and doesn't care about the Executable flag
 +X-C-W = Find readonly executable memory
 +W = Finds all writable memory and don't care about copy on write or execute
 "" = Find everything (is the same as "*X*C*W" )


  • alignmenttype is an integer:
    • 0 = No alignment check
    • 1 = Address must be dividable by alignmentparam
    • 2 = Address must end with alignmentparam


See also[edit]

Related Functions[edit]