本地下载文件大小:26.2 MB
高速下载需优先下载高速下载器
x64dbg2020中文绿色版是极其好用的x64/x32位程序反汇编修改器,是每一位编程人员必备的反汇编工具,它主要包括三个部分,DBG调试部分,处理代码调试并提供GUI数据支持,GUI图形调试器,建立在Qt之上,为用户提供实时交互,Bridge是DBG和GUI部分的通信库,桥接它们处理新功能,而不用更新其他部分代码,x64dbg2020支持全Windows系统,内置汇编器、反汇编程序可以帮助开发者快速完成程序编译,小编为您带来了x64dbg2020中文绿色版的软件下载,免安装,全中文界面,让你更简单的使用它,需要的朋友快来本站下载吧。
DLL和EXE文件的全功能调试
从Windows XP到Windows 10的32位和64位Windows支持
内置汇编器(XEDParse / Keystone / asmjit)
快速反汇编程序(Zydis)
类似于C的表达式解析器
记录中
笔记
内存映射视图
模块和符号视图
源代码视图
线程视图
内容敏感的寄存器视图
调用堆栈视图
SEH视图
句柄,特权和TCP连接枚举。
多数据类型内存转储
动态堆栈视图
可执行补丁
动态识别模块和字符串
注释,标签,书签等的用户数据库(JSON)。
基本调试符号(PDB)支持
可扩展,可调试的脚本语言,实现自动化
不断增长的API支持插件
基本的反调试
反编译器(雪人)
集成了导入重建器(Scylla)
分析
条件断点和跟踪具有很大的灵活性
跟踪时收集数据
一、表达方式
调试器允许使用基本表达式。只需在命令窗口中键入一个表达式,结果就会显示在控制台中。除了计算外,它还允许使用类似C的语法快速更改变量。
输入值基本输入(数字/变量)可以用作表达式中的常量,有关更多信息,请参见输入。
经营者您可以在表达式中使用以下运算符。它们按以下顺序处理:
括号/括号:(1+2),[1+6]优先于其它操作。
一元减号/二进制非/逻辑非:(-1负1),~1(二进制非1),!0(逻辑非0)。
乘法/除法:(2*3常规乘法),2`3(占乘法的高位),6/3(常规除法),5%3(除法的模/余数)。
加法/减法:(1+3加法),5-2(减法)。
左/右移位/旋转:(1<<2向左移位,shl表示未签名,sal表示签名),10>>1(向右移位,shl表示未签名,sal表示签名),1<<<2(向左旋转),1>>>2(向右旋转)。
小(相等)/大(等于):4<10,3>6,1<=2,6>=7(如果真解析为1,0,如果假)。
等于/不等于:1==1,2!=6(如果为true,则解析为1;如果为false,则解析为0)。
二进制和:(12&2常规二进制和)。
二进制异或:(2^1常规二进制异或)。
二进制或:(2|8常规二进制或)。
逻辑和:(0&&3如果为true,则解析为1;如果为false,则解析为0)。
逻辑或:(0||3如果为true,则解析为1;如果为false,则解析为0)。
逻辑含义:(0->1如果为true,则解析为1;如果为false,则解析为0)。
快速分配可以使用类似于C的语法轻松地更改内存,变量,寄存器或标志:
a?=b在哪里?可以是任何非逻辑运算符。a可以是任何寄存器,标志,变量或存储器位置。b可以是被识别为表达式的任何东西。
a++/a--其中a可以是任何寄存器,标志,变量或存储器位置。
表达方式调试器允许使用基本表达式。只需在命令窗口中键入一个表达式,结果就会显示在控制台中。除了计算外,它还允许使用类似C的语法快速更改变量。
输入值基本输入(数字/变量)可以用作表达式中的常量,有关更多信息,请参见输入。
经营者您可以在表达式中使用以下运算符。它们按以下顺序处理:
括号/括号:(1+2),[1+6]优先于其它操作。
一元减号/二进制非/逻辑非:(-1负1),~1(二进制非1),!0(逻辑非0)。
乘法/除法:(2*3常规乘法),2`3(占乘法的高位),6/3(常规除法),5%3(除法的模/余数)。
加法/减法:(1+3加法),5-2(减法)。
左/右移位/旋转:(1<<2向左移位,shl表示未签名,sal表示签名),10>>1(向右移位,shl表示未签名,sal表示签名),1<<<2(向左旋转),1>>>2(向右旋转)。
小(相等)/大(等于):4<10,3>6,1<=2,6>=7(如果真解析为1,0,如果假)。
等于/不等于:1==1,2!=6(如果为true,则解析为1;如果为false,则解析为0)。
二进制和:(12&2常规二进制和)。
二进制异或:(2^1常规二进制异或)。
二进制或:(2|8常规二进制或)。
逻辑和:(0&&3如果为true,则解析为1;如果为false,则解析为0)。
逻辑或:(0||3如果为true,则解析为1;如果为false,则解析为0)。
逻辑含义:(0->1如果为true,则解析为1;如果为false,则解析为0)。
快速分配可以使用类似于C的语法轻松地更改内存,变量,寄存器或标志:
a?=b在哪里?可以是任何非逻辑运算符。a可以是任何寄存器,标志,变量或存储器位置。b可以是被识别为表达式的任何东西。
a++/a--其中a可以是任何寄存器,标志,变量或存储器位置。
二、表达函数您可以在表达式中使用函数。调试器定义了以下功能:
GUI交互disasm.sel()/ dis.sel():在反汇编视图中获取选定的地址。
dump.sel() :在转储视图中获取选定的地址。
stack.sel() :在堆栈视图中获取选定的地址。
资源src.disp(addr):获取addr相对于最后一条源线的位移。
src.line(addr):获取的源行号addr。
模组mod.party(addr):获取模块的聚会编号addr。0是用户模块,1是系统模块。
mod.base(addr):获取模块的基地址addr。
mod.size(addr):获取模块的大小addr。
mod.hash(addr):获取模块的哈希值addr。
mod.entry(addr):获取模块的入口地址addr。
mod.system(addr):如果at的模块addr是系统模块,则为true 。False:模块是用户模块。
mod.user(addr):如果at的模块addr是用户模块,则为true 。False:模块不是用户模块。
mod.main():返回主模块(调试)的基础。如果这是一个DLL,它将返回0直到加载。
mod.rva(addr):获得的RVA addr。如果addr不在模块内,它将返回0。
mod.offset(addr):获取的文件偏移量addr。如果addr不在模块内,它将返回0。
mod.isexport(addr):如果addr是从模块导出的函数,则为true 。
处理信息peb() :获取PEB地址。
teb() :获取TEB地址。
tid() :获取当前线程ID。
一般用途bswap(value):字节交换value。例如,bswap(44332211)= 0x11223344。
ternary(condition, val1, val2):如果condition不为零,则返回val1,否则返回val2。
GetTickCount() :x64dbg的滴答计数。
记忆mem.valid(addr):如果addr是有效的内存地址,则为True 。
mem.base(addr):返回的内存页面的基础addr(可以根据您的内存映射模式而改变)。
mem.size(addr):返回的内存页面大小addr(可以根据您的内存映射模式而改变)。
mem.iscode(addr):如果addr页面是可执行的,则为true 。
mem.decodepointer(ptr):等效于在DecodePointer上调用API ptr,仅在Vista +上有效。
拆卸dis.len(addr):在获取指令的长度addr。
dis.iscond(addr):如果at处的指令addr是条件分支,则为true 。
dis.isbranch(addr):如果at处的指令addr是分支(jcc / call),则为true 。
dis.isret(addr):如果at的指令为,addr则为true ret。
dis.iscall(addr):如果at的指令为,addr则为true call。
dis.ismem(addr):如果at处的指令addr具有存储操作数,则为true 。
dis.isnop(addr):如果at的指令addr等效于NOP ,则为true 。
dis.isunusual(addr):如果at处的指令addr不正常,则为true 。
dis.branchdest(addr):指令的跳转目的地位于addr(如果在其上按Enter,将显示以下内容)。
dis.branchexec(addr):如果addr要执行分支,则为true 。
dis.imm(addr):处指令的立即值addr。
dis.brtrue(addr):指令在的分支目的地addr。
dis.brfalse(addr):如果下一条指令addr是条件分支,则下一条指令的地址。
dis.next(addr):来自的下一条指令的地址addr。
dis.prev(addr):来自的上一条指令的地址addr。
dis.iscallsystem(addr):如果at的指令addr进入系统模块,则为true 。
追踪记录tr.enabled(addr):如果在启用了跟踪记录,则为true addr。
tr.hitcount(addr):在上的跟踪记录的命中数addr。
tr.runtraceenabled() :如果启用了运行跟踪,则为True。
字节/字/双字/ Qword / PtrReadByte(addr),Byte(addr),byte(addr):读取一个字节addr,并返回值。示例:byte(eax)从内存位置读取一个字节[eax]。
ReadWord(addr),Word(addr),word(addr):阅读来自一个字(2个字节)addr,并返回该值。
ReadDword(addr),Dword(addr),dword(addr):阅读来自一个双字(4个字节)addr,并返回该值。
ReadQword(addr),Qword(addr),qword(addr):阅读来自一个四字(8个字节)addr,并返回值(仅在x64可用)。
ReadPtr(addr),ReadPointer(addr),ptr(addr),Pointer(addr),pointer(addr):阅读来自一个指针(4/8字节)addr,并返回该值。
职能func.start():函数的返回开始addr是的一部分,否则返回零。
func.end():函数的返回端addr是的一部分,否则返回零。
参考文献ref.count() :当前参考视图中的条目数。
ref.addr(index):在处获取参考的地址index。零故障。
争论假定返回地址在堆栈上(例如,您在函数内部)。
arg.get(index):从index(从零开始)获取参数。
arg.set(index, value):将index(从零开始)的参数设置为value。
例外情况这是一组用于获取有关最后一个异常的信息的函数。它们可用于异常断点以构建更高级的条件。
ex.firstchance() :最后一个异常是否是第一次机会异常。
ex.addr() :最后一个异常地址。
ex.code() :最后一个异常代码。
ex.flags() :最后一个异常标志。
ex.infocount() :上次异常信息计数(参数数量)。
ex.info(index) :最后一个异常信息,如果索引超出范围则为零。
1、积极发展
x64dbg一直在积极开发中。
2、GPLv3
我们提供可执行文件和源代码。随时贡献。
3、可订制
用C ++编写插件,更改颜色并调整您的首选项。
4、x64 / x32支持
可以调试x64和x32应用程序。只有一个界面。
5、建立在开源库上
使用Qt,TitanEngine,Zydis,Yara,Scylla,Jansson,lz4,XEDParse,asmjit和snowman。
6、简单,强大的开发
使用C ++和Qt快速添加新功能。
7、可编写脚本
具有集成的,可调试的,类似于ASM的脚本语言。
8、社区意识
具有许多由反向社区考虑或实现的功能。
9、可扩展
编写插件以添加脚本命令或集成您的工具。
一体机驱动/ 131 MB
系统增强/ 45.33 MB
杂类其他/ 8.32 MB
站长工具/ 24.5 MB
游戏辅助/ 110 MB
软件评论
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,与本站立场无关!