Hex-Rays 02 Jan 08

Hex-Rays发布新版分解编译器,重点改进包括:增强用户体验、支持非常规调用约定、提高混淆代码处理能力。新版优化了用户界面,引入多个伪代码窗口、代码隐藏等功能,方便用户查看和理解复杂代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  We are glad to release a new version of the Hex-Rays decompiler! Highlights of this build: improved usability support for unusual calling conventions better handling of obfuscated code The most important improvement is the user interface. Now the decompiler is at your fingertips at all times, the same way as the graph view. Remember that you can toggle graph-text views in IDA with one keyboard hit? For the decompiler you can use the Tab key: it toggles between the disassembly and pseudocode views. For those of you who prefer to see both the decompiler output and disassembler output in the same window, we added the "copy to disassembly" command. It just does what its names says: copies the pseudocode text to the disassembly window. You can see both outputs simultaneously: mapping of low level assembly idioms to high level constructs is made as transparent as possible. With this build, you will be able to open multiple pseudocode windows. This will be especially useful for long functions: just open a separate window for each called function by Ctrl-double clicking on function names. The long function will stay intact in its own window and you won't lose time by reanalyzing it upon each return. One more command to handle code complexity: ability to hide parts of code. The new hide/unhide command allows you to collapse a multiline statement into just one line. Collapsing unimportant sub-statements reveals the global structure of the decompiled function. We also added other things to make the life easier: the command to jump to xrefs, better status line information, support for the __spoiled keyword, and more heuristic rules to the analyzer. Better user interface and improved robustness (click for more info) + multiple pseudocode windows can be opened + new command: copy c text to disassembly window (available from the right-click menu) + new command: the tab key toggles between the disassembly and pseudocode windows + new command: hide/unhide statements (if,loops,switch,blocks) + new command: jump to xref; since the pseudocode addresses do not map exactly to disassembly addresses, the decompiler jump to the nearest address if an exact match can not be found + status line of pseudocode window displays the name of the current function + spoiled<> keyword is supported by the decompiler (maybe there are some cases when it is ignored, requires more thourough testing) + more intelligent handling of tail calls + more intelligent detection of thiscall/fastcall function types + improved detection of saved eax/edx pairs: now such functions are correctly detected as returning 'void' bugfix: delieberately obfucsated code could cause interrs bugfix: wrong sp trace could lead to interr; now it leads to 'lvar allocation failure' bugfix: output code for the SF flag was incorrect. the code was "x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值