Difference between revisions of "Lua:splitDisassembledString"

From Cheat Engine
Jump to navigation Jump to search
(Created page with ''''function''' splitDisassembledString(''DisassembledString'') Slipts a disassembler string, returning 4 strings. The address, bytes, opcode and extra field. To be used with ret…')
 
m (Added CodeBox Template.)
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''function''' splitDisassembledString(''DisassembledString'')
+
[[Category:Lua]]
 +
{{CodeBox|'''function''' splitDisassembledString(''disassembledString'') ''':''' String, String, String, String}}
  
Slipts a disassembler string, returning 4 strings. The address, bytes, opcode and extra field.
+
Splits a disassembled instruction string (typically returned from <code>disassemble</code>) into '''four separate strings''':
To be used with return from [[disassemble]].
+
the address, opcode, bytes, and extra field (comment).
  
=== Function Parameters ===
+
===Function Parameters===
 
+
{|width="85%" cellpadding="5%" cellspacing="0" border="0"
{|width="85%" cellpadding="10%" cellpadding="5%" cellspacing="0" border="0"
 
 
!align="left"|Parameter
 
!align="left"|Parameter
 
!align="left"|Type
 
!align="left"|Type
 
!style="width: 80%;background-color:white;" align="left"|Description
 
!style="width: 80%;background-color:white;" align="left"|Description
 
|-
 
|-
|DisassembledString
+
|disassembledString
|string
+
|String
|The disassembled string to split
+
|The disassembled instruction string to parse.
 
|}
 
|}
  
 +
===Example===
 +
<pre>
 +
local disStr = disassemble(0x00403E0B)
 +
local address, opcode, bytes, extra = splitDisassembledString(disStr)
 +
print(address)  -- e.g., "[cheatengine-x86_64-SSE4-AVX2.exe+7BF0A0]"
 +
print(opcode)  -- e.g., "lea rcx,[00BBF010]"
 +
print(bytes)    -- e.g., "48 8D 0D FEB17B00"
 +
print(extra)    -- e.g., "00403E0B"
 +
</pre>
  
== Examples ==
+
{{LuaSeeAlso}}
  local addr = getAddress('00123ABC')
 
  local disassStr = disassemble(addr)
 
  local extraField, opcode, bytes, address = splitDisassembledString(disassStr)
 
  local addr_2 = addr + getInstructionSize(addr)
 
  local disassStr_2 = disassemble(addr)
 
  local extraField_2, opcode_2, bytes_2, address_2 = splitDisassembledString(disassStr)
 
 
 
 
 
== See also ==
 
* [[Lua]]
 
* [[Help_File:Script engine|Script engine]]
 
  
=== Related Functions ===
+
{{Assembly}}
* [[disassemble]]
 
* [[getInstructionSize]]
 
* [[getPreviousOpcode]]
 
* [[AOBScan]]
 
* [[autoAssemble]]
 
* [[readBytes]]
 
* [[readPointer]]
 
* [[writeBytes]]
 
* [[writeFloat]]
 
* [[readBytesLocal]]
 
* [[readPointerLocal]]
 
* [[writeBytesLocal]]
 
* [[wordToByteTable]]
 
* [[dwordToByteTable]]
 
* [[qwordToByteTable]]
 
* [[floatToByteTable]]
 
* [[doubleToByteTable]]
 
* [[stringToByteTable]]
 
* [[wideStringToByteTable]]
 
* [[byteTableToWord]]
 
* [[byteTableToDword]]
 
* [[byteTableToQword]]
 
* [[byteTableToFloat]]
 
* [[byteTableToDouble]]
 
* [[byteTableToString]]
 
* [[byteTableToWideString]]
 

Latest revision as of 00:27, 5 December 2025

<> Function

function splitDisassembledString(disassembledString) : String, String, String, String

Splits a disassembled instruction string (typically returned from disassemble) into four separate strings: the address, opcode, bytes, and extra field (comment).

Function Parameters[edit]

Parameter Type Description
disassembledString String The disassembled instruction string to parse.

Example[edit]

local disStr = disassemble(0x00403E0B)
local address, opcode, bytes, extra = splitDisassembledString(disStr)
print(address)  -- e.g., "[cheatengine-x86_64-SSE4-AVX2.exe+7BF0A0]"
print(opcode)   -- e.g., "lea rcx,[00BBF010]"
print(bytes)    -- e.g., "48 8D 0D FEB17B00"
print(extra)    -- e.g., "00403E0B"

See also[edit]

Lua
Script Engine

Related Functions[edit]

autoAssemble
autoAssembleCheck
disassemble
splitDisassembledString
getInstructionSize
getPreviousOpcode
registerAssembler
unregisterAssembler