WinDbg常用命令系列---反汇编u*
u, ub, uu (Unassemble)
u*命令显示内存中指定程序代码的汇编转换。不要将此命令与~u(解冻线程)命令混淆。
u[u|b] Range u[u|b] Address u[u|b]
参数:
- Range
指定包含要反汇编的指令的内存范围。如果使用b标志,则必须使用“address llength”语法而不是“address1 address2”语法指定范围。 - Address
指定要反汇编的内存范围的开始。 - b
通过倒数确定要反汇编的内存范围。如果使用ub地址,则反汇编的范围将是以地址结尾的8或9字节范围。如果使用语法ub address llength指定范围,则反汇编的范围将是以地址结尾的指定长度的范围。 - u
指定即使存在内存读取错误,反汇编也将继续。
环境:
模式 |
用户模式, 内核模式 |
目标 |
实时, 故障转储 |
适用 |
全部 |
如果未为u命令指定参数,则反汇编将从当前地址开始,并扩展八条指令(在基于x86或x64的处理器上)或九条指令(在基于安腾的处理器上)。当您在没有参数的情况下使用ub时,反汇编将在当前地址之前包含八条或九条指令。不要将此命令与up(从物理内存中取消装配)混淆。u命令只反汇编虚拟内存,而up命令只反汇编物理内存。
uf (Unassemble Function)
uf命令在内存中显示指定函数的程序集转换。
uf [Options] Address
参数:
- Options
以下一个或多个选项:- /c
-
只显示例程中的调用指令,而不显示完全反汇编。调用指令可以用于从解体代码中确定呼叫者和被叫关系。
- /D
-
创建用于导航调用图的链接被调用方名称。
- /m
-
放宽阻塞要求,允许多个出口。
- /o
-
按地址而不是按函数偏移量对显示进行排序。此选项显示完整函数的内存布局视图
- /O
-
创建用于访问调用信息和创建断点的链接调用行。
- /i
-
在例行程序中显示指令号码
- Address
指定要反汇编的函数的地址。
环境:
模式 |
用户模式下,内核模式 |
目标 |
实时、 崩溃转储 |
平台 |
全部 |
显示屏根据功能顺序显示整个功能。
up (Unassemble from Physical Memory)
up命令在物理内存中显示指定程序代码的程序集转换。
up Range up Address up
参数:
- Range
指定物理内存中包含要反汇编的指令的内存范围。 - Address
指定要反汇编的物理内存中内存范围的开始。八条指令(在基于x86的处理器上)或九条指令(在基于安腾的处理器上)未装配。
环境:
模式 |
用户模式下,内核模式 |
目标 |
实时、 崩溃转储 |
平台 |
全部 |
如果没有为up命令指定参数,反汇编将从当前地址开始,并扩展八条指令(在基于x86的处理器上)或九条指令(在基于安腾的处理器上)。不要将此命令与u混淆。up命令只反汇编物理内存,而u命令只反汇编虚拟内存。
为虫子生,为虫子死,为虫子奋斗一辈子