变量

本程序支持变量。有三种类型的变量:

  • 用户:变量通过用户使用 var/mov 命令创建。这些变量没有访问限制。你通常只处理这些。
  • 系统:由 x64dbg 创建的变量,可读可写,但不能删除。
  • 只读:由 x64dbg 创建的变量,可以读取,但不能写入或删除。

设置变量

你可以通过以下方式设置变量:

mov myvar, 1234
mov $myvar, 1234
myvar = 1234
$myvar = 1234

以上都是将一个 USER 变量 myvar 设置为 0x1234。你也可以使用 C-语言样式的赋值运算符 (参见关于支持运算符的完整列表的表达式文档):

myvar += 0x10 myvar |= 0x10 myvar++ myvar--

保留变量

这里有几个保留的变量:

  • $res/$result:一般结果变量。
  • $resN/$resultN:可选其他结果的变量(N= 1-4)。
  • $pid:被调试的可执行程序进程 ID。
  • $hp/$hProcess:被调试的可执行程序句柄。
  • $lastallocalloc 命令的上一次结果。
  • $breakpointcondition:控制条件断点命令中的暂停行为。
  • $breakpointcounter:断点的点击计数器,之前设置的条件断点的条件被求值。
  • $breakpointlogcondition:条件断点的日志条件。它不能用于控制日志记录行为。