Difference between revisions of "Lua:AOBScan"
Jump to navigation
Jump to search
m (moved AOBScan to Lua:AOBScan) |
(→Related Functions) |
||
Line 66: | Line 66: | ||
=== 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]] |
Revision as of 00:34, 25 January 2018
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
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
Related Functions
- autoAssemble
- disassemble
- getInstructionSize
- getPreviousOpcode
- allocateSharedMemory
- mapMemory
- unmapMemory
- readBytes
- readPointer
- writeBytes
- readBytesLocal
- readPointerLocal
- writeBytesLocal
- wordToByteTable
- dwordToByteTable
- qwordToByteTable
- floatToByteTable
- doubleToByteTable
- stringToByteTable
- wideStringToByteTable
- byteTableToWord
- byteTableToDword
- byteTableToQword
- byteTableToFloat
- byteTableToDouble
- byteTableToString
- byteTableToWideString