SlideShare a Scribd company logo
HexRaysCodeXplorer: object oriented RE for fun and profit 
Alexander Matrosov 
@matrosov 
Eugene Rodionov 
@vxradius
C++ Code Reconstruction Problems 
Show problems on real examples (Flamer) 
HexRaysCodeXplorerv1.5 [H2HC Edition] Agenda
C++ Code Reconstruction Problems 
Object identification 
Type reconstruction 
Class layout reconstruction 
Identify constructors/destructors 
Identify class members 
Local/global type reconstruction 
Associate object with exact method calls 
RTTI reconstruction 
Vftablereconstruction 
Associate vftableobject with exact object 
Class hierarchy reconstruction
C++ Code Reconstruction Problems Class AvfPtra1() a2() A::vfTablemetaA::a1() A::a2() RTTI Object LocatorsignaturepTypeDescriptorpClassDescriptor
C++ Code Reconstruction Problems
REconstructingFlamer Framework
An overview of the Flamer Framework 
Vector<Command Executor> 
DB_Query ClanCmd 
Vector<Task> 
IDLER CmdExec 
Vector<DelayedTasks> 
Euphoria 
Share 
Supplier 
Vector<Consumer> 
Mobile 
Consumer 
Cmd 
Consumer 
Sniffer Munch FileFinder 
FileCollect Driller GetConfig 
LSS 
Sender 
Frog Beetlejuice 
Lua 
Consumer 
Media 
Consumer 
http://www.welivesecurity.com/2012/08/02/flamer-analysis-framework-reconstruction/
An overview of the Flamer Framework 
Vector<Command Executor> 
DB_Query ClanCmd 
Vector<Task> 
IDLER CmdExec 
Vector<DelayedTasks> 
Euphoria 
Share 
Supplier 
Vector<Consumer> 
Mobile 
Consumer 
Cmd 
Consumer 
Sniffer Munch FileFinder 
FileCollect Driller GetConfig 
LSS 
Sender 
Frog Beetlejuice 
Lua 
Consumer 
Media 
Consumer 
http://www.welivesecurity.com/2012/08/02/flamer-analysis-framework-reconstruction/
An overview of the Flamer Framework 
Vector<Command Executor> 
DB_Query ClanCmd 
Vector<Task> 
IDLER CmdExec 
Vector<DelayedTasks> 
Euphoria 
Share 
Supplier 
Vector<Consumer> 
Mobile 
Consumer 
Cmd 
Consumer 
Sniffer Munch FileFinder 
FileCollect Driller GetConfig 
LSS 
Sender 
Frog Beetlejuice 
Lua 
Consumer 
Media 
Consumer 
http://www.welivesecurity.com/2012/08/02/flamer-analysis-framework-reconstruction/
Identify Smart Pointer Structure 
oSmart pointers 
oStrings 
oVectors to maintain the objects 
oCustom data types: 
wrappers 
tasks, 
triggers 
and etc.
Data Types Being Used: Smart pointers 
typedefstructSMART_PTR 
{ 
void *pObject;// pointer to the object 
int*RefNo;// reference counter 
};
Identify Smart Pointer Structure
Data Types Being Used: Vectors 
structVECTOR 
{ 
void *vTable;// pointer to the table 
intNumberOfItems;// self-explanatory 
intMaxSize;// self-explanatory 
void *vector;// pointer to buffer with elements 
}; 
oUsed to handle the objects: 
tasks 
triggers 
etc.
Identify Exact Virtual Function Call in Vtable
Identify Exact Virtual Function Call in Vtable
Identify Custom Type Operations
Data Types Being Used: Strings 
structUSTRING_STRUCT 
{ 
void *vTable;// pointer to the table 
intRefNo;// reference counter 
intInitialized; 
wchar_t*UnicodeBuffer;// pointer to unicodestring 
char *AsciiBuffer;// pointer to ASCII string 
intAsciiLength;// length of the ASCII string 
intReserved; 
intLength;// Length of unicodestring 
intLengthMax;// Size of UnicodeBuffer 
};
Identify Objects Constructors
Identify Objects Constructors
REconstructingObject’s Attributes
REconstructingObject’s Attributes
REconstructingObject’s Methods
REconstructingObject’s Methods
HexRaysCodeXplorer
HexRaysCodeXplorerv1.0: released in 2013 at REcon
HexRaysCodeXplorerFeatures 
oHex-Rays decompilerplugin 
oThe plugin was designed to facilitate static analysis of: 
object oriented code 
position independent code 
oThe plugin allows to: 
navigate through decompiled virtual methods 
partially reconstruct object type
Hex-Rays DecompilerPlugin SDK 
oAt the heart of the decompilerlies ctreestructure: 
syntax tree structure 
consists of citem_tobjects 
there are 9 maturity levels of the ctreestructure
Hex-Rays DecompilerPlugin SDK 
oAt the heart of the decompilerlies ctreestructure: 
syntax tree structure 
consists of citem_tobjects 
there are 9 maturity levels of the ctreestructure
Hex-Rays DecompilerPlugin SDK 
oType citem_tis a base class for: 
cexpr_t–expression type 
cinsn_t–statement type 
oExpressions have attached type information 
oStatements include: 
block, if, for, while, do, switch, return, goto, asm 
oHex-Rays provides iterators for traversing the citem_tobjects within ctreestructure: 
ctree_visitor_t 
ctree_parentee_t 
citem_tcexpr_tcinsn_t
Hex-Rays Decompiler Plugin SDK 
o Type citem_t is a base class for: 
 cexpr_t – expression type 
 cinsn_t – statement type 
o Expressions have attached type information 
o Statements include: 
 block, if, for, while, do, switch, return, goto, asm 
o Hex-Rays provides iterators for traversing the citem_t objects within ctree 
structure: 
 ctree_visitor_t 
 ctree_parentee_t 
citem_t 
cexpr_t cinsn_t
DEMO time :)
HexRaysCodeXplorer: GapzPosition Independent Code
HexRaysCodeXplorer: Virtual Methods 
The IDA’s ‘Local Types’ is used to represent object type
Hex-Rays decompilerplugin is used to navigate through the virtual methods 
HexRaysCodeXplorer: Virtual Methods
Hex-Rays decompilerplugin is used to navigate through the virtual methods 
HexRaysCodeXplorer: Virtual Methods
HexRaysCodeXplorer: Object Type REconstruction 
oHex-Rays’sctreestructure may be used to partially reconstruct object type based on its initialization routine (constructor) 
oInput: 
pointer to the object instance 
object initialization routine entry point 
oOutput: 
C structure-like object representation
HexRaysCodeXplorer: Object Type REconstruction 
citem_tobjects to monitor: 
memptr 
idx 
memref 
call (LOBYTE, etc.)
HexRaysCodeXplorer: Object Type REconstruction 
//reference of DWORD at offset 12 in buffer a1 
*(DWORD *)(a1 + 12) = 0xEFCDAB89;
HexRaysCodeXplorerv1.5 [H2HC Edition] 
oNew citem_tobjects to monitor: 
memptr 
idx 
memref 
call (LOBYTE, etc.) 
ptr, asg, …
HexRaysCodeXplorerv1.5 [H2HC Edition] 
oNew citem_tobjects to monitor: 
memptr 
idx 
memref 
call (LOBYTE, etc.) 
ptr, asg, … 
oType propagation for nested function calls
HexRaysCodeXplorerv1.5 [H2HC Edition] 
oFeatures of v1.5 [H2HC Edition] : 
Better Type Reconstruction 
•Improvements for parsing citem_tobjects with PTR andASG statements 
•Recursive traversal of Ctreeto reconstruct Types hierarchy 
Navigate from Pseudo code window to Disassembly line 
Hints for Ctreeelements which point to Disassembly line 
Support for x64 version of Hex-Rays Decompiler 
Some bug fixes by user requests
DEMO time :)
HexRaysCodeXplorer: -> What are the next goals? 
oDevelop the next version on IdaPython 
oFocus on the following features: 
Type reconstruction(C++, Objective-C) 
Type Navigation (C++, Objective-C) 
Vtablesparsing based on Hex-Rays API 
Ctreegraph navigation improvements 
Patterns for possible vulndetection
Why python?
Python Arsenal Contesthttp://2014.zeronights.org/contests/python-arsenal-contest.html 
Best exploit devtool/plugin/lib 
Best forensics tool/plugin/lib 
Best reversing tool/plugin/lib 
Best fuzzing tool/plugin/lib 
Best malware analysis tool/plugin/lib
Thank you for your attention! 
HexRaysCodeXplorer 
http://REhints.com@REhints 
https://github.com/REhints/HexRaysCodeXplorer

More Related Content

PDF
[PUBLIC] Git – Concepts and Workflows.pdf
PPTX
Object Oriented Code RE with HexraysCodeXplorer
PPTX
Git basics to advance with diagrams
KEY
Git and GitHub
PDF
Git and Github
PPTX
Abc of docker
PDF
Git for beginners
PPTX
Git 101 for Beginners
[PUBLIC] Git – Concepts and Workflows.pdf
Object Oriented Code RE with HexraysCodeXplorer
Git basics to advance with diagrams
Git and GitHub
Git and Github
Abc of docker
Git for beginners
Git 101 for Beginners

What's hot (20)

PDF
Openhab Grafana and Influxdb
PDF
[NDC16] Effective Git
PDF
Jenkins with Unity3d & Android
PDF
Docker multi-stage build
PPT
Introduction to Git and Github
PDF
Version Control System - Git
PDF
Git & Github for beginners
DOCX
Bitbucket
PPTX
Kafka timestamp offset
PPTX
Git in 10 minutes
PDF
Git - An Introduction
PPTX
Introduction to Git and GitHub Part 1
PPTX
Git and GitHub
PDF
Front end architecture
PDF
Git flow
PDF
Getting Git Right
PDF
Git and GitHub for Documentation
KEY
Introduction to Git
PPTX
Intro to git and git hub
PDF
Git in a nutshell
Openhab Grafana and Influxdb
[NDC16] Effective Git
Jenkins with Unity3d & Android
Docker multi-stage build
Introduction to Git and Github
Version Control System - Git
Git & Github for beginners
Bitbucket
Kafka timestamp offset
Git in 10 minutes
Git - An Introduction
Introduction to Git and GitHub Part 1
Git and GitHub
Front end architecture
Git flow
Getting Git Right
Git and GitHub for Documentation
Introduction to Git
Intro to git and git hub
Git in a nutshell
Ad

Viewers also liked (20)

PDF
Pointers & References in C++
PDF
Festi botnet analysis and investigation
PDF
Defeating x64: The Evolution of the TDL Rootkit
PPTX
Modern malware techniques for attacking RBS systems in Russia
PDF
HexRaysCodeXplorer: make object-oriented RE easier
PDF
Reconstructing Gapz: Position-Independent Code Analysis Problem
PPTX
Win32/Duqu: involution of Stuxnet
PDF
Modern Bootkit Trends: Bypassing Kernel-Mode Signing Policy
PPTX
Проведение криминалистической экспертизы и анализа руткит-программ на примере...
PDF
Advanced Evasion Techniques by Win32/Gapz
PPTX
Алексей Кутумов, Вектор с нуля
PDF
Carberp Evolution and BlackHole: Investigation Beyond the Event Horizon
PDF
BERserk: New RSA Signature Forgery Attack
DOCX
42054960
PDF
Smartcard vulnerabilities in modern banking malware
PDF
インテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor Skochinsky
PPTX
Defeating x64: Modern Trends of Kernel-Mode Rootkits
PDF
Bootkits: past, present & future
PDF
Win32/Flamer: Reverse Engineering and Framework Reconstruction
PPT
Heat exchanger
Pointers & References in C++
Festi botnet analysis and investigation
Defeating x64: The Evolution of the TDL Rootkit
Modern malware techniques for attacking RBS systems in Russia
HexRaysCodeXplorer: make object-oriented RE easier
Reconstructing Gapz: Position-Independent Code Analysis Problem
Win32/Duqu: involution of Stuxnet
Modern Bootkit Trends: Bypassing Kernel-Mode Signing Policy
Проведение криминалистической экспертизы и анализа руткит-программ на примере...
Advanced Evasion Techniques by Win32/Gapz
Алексей Кутумов, Вектор с нуля
Carberp Evolution and BlackHole: Investigation Beyond the Event Horizon
BERserk: New RSA Signature Forgery Attack
42054960
Smartcard vulnerabilities in modern banking malware
インテルMEの秘密 - チップセットに隠されたコードと、それが一体何をするかを見出す方法 - by イゴール・スコチンスキー - Igor Skochinsky
Defeating x64: Modern Trends of Kernel-Mode Rootkits
Bootkits: past, present & future
Win32/Flamer: Reverse Engineering and Framework Reconstruction
Heat exchanger
Ad

Similar to HexRaysCodeXplorer: object oriented RE for fun and profit (20)

PDF
Aleksandr Matrosov, Eugene Rodionov - HexRaysCodeXplorer make object-oriented...
PDF
Half-automatic Compilable Source Code Recovery
PDF
Introduction to HDF5 Data Model, Programming Model and Library APIs
PPT
PDF
Matrosov, rodionov win32 flamer. reverse engineering and framework reconstr...
PDF
Introduction to HDF5 Data Model, Programming Model and Library APIs
PDF
Static analysis for beginners
PPT
Introduction to HDF5 Data Model, Programming Model and Library APIs
PDF
C++ CoreHard Autumn 2018. Debug C++ Without Running - Anastasia Kazakova
PDF
Type Profiler: An Analysis to guess type signatures
PDF
Overloading in Overdrive: A Generic Data-Centric Messaging Library for DDS
PDF
[E-Dev-Day-US-2015][8/9] he EFL API in Review (Tom Hacohen)
PPT
What will be new in HDF5?
PDF
PDF
C++ Interview Questions and Answers PDF By ScholarHat
PDF
Reverse_Engineering_of_binary_File_Formats.pdf
PDF
Pseudo dynamic immutable records in C++
PPT
9780324782011_PPT_ch09.ppt
PDF
Knowing your Python Garbage Collector
PDF
C,c++ interview q&a
Aleksandr Matrosov, Eugene Rodionov - HexRaysCodeXplorer make object-oriented...
Half-automatic Compilable Source Code Recovery
Introduction to HDF5 Data Model, Programming Model and Library APIs
Matrosov, rodionov win32 flamer. reverse engineering and framework reconstr...
Introduction to HDF5 Data Model, Programming Model and Library APIs
Static analysis for beginners
Introduction to HDF5 Data Model, Programming Model and Library APIs
C++ CoreHard Autumn 2018. Debug C++ Without Running - Anastasia Kazakova
Type Profiler: An Analysis to guess type signatures
Overloading in Overdrive: A Generic Data-Centric Messaging Library for DDS
[E-Dev-Day-US-2015][8/9] he EFL API in Review (Tom Hacohen)
What will be new in HDF5?
C++ Interview Questions and Answers PDF By ScholarHat
Reverse_Engineering_of_binary_File_Formats.pdf
Pseudo dynamic immutable records in C++
9780324782011_PPT_ch09.ppt
Knowing your Python Garbage Collector
C,c++ interview q&a

Recently uploaded (20)

PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Spectral efficient network and resource selection model in 5G networks
PPT
Teaching material agriculture food technology
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Encapsulation theory and applications.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
Unlocking AI with Model Context Protocol (MCP)
Encapsulation_ Review paper, used for researhc scholars
Spectral efficient network and resource selection model in 5G networks
Teaching material agriculture food technology
Building Integrated photovoltaic BIPV_UPV.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
NewMind AI Weekly Chronicles - August'25 Week I
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
MIND Revenue Release Quarter 2 2025 Press Release
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Per capita expenditure prediction using model stacking based on satellite ima...
Encapsulation theory and applications.pdf
Big Data Technologies - Introduction.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
The AUB Centre for AI in Media Proposal.docx
Mobile App Security Testing_ A Comprehensive Guide.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Network Security Unit 5.pdf for BCA BBA.

HexRaysCodeXplorer: object oriented RE for fun and profit

  • 1. HexRaysCodeXplorer: object oriented RE for fun and profit Alexander Matrosov @matrosov Eugene Rodionov @vxradius
  • 2. C++ Code Reconstruction Problems Show problems on real examples (Flamer) HexRaysCodeXplorerv1.5 [H2HC Edition] Agenda
  • 3. C++ Code Reconstruction Problems Object identification Type reconstruction Class layout reconstruction Identify constructors/destructors Identify class members Local/global type reconstruction Associate object with exact method calls RTTI reconstruction Vftablereconstruction Associate vftableobject with exact object Class hierarchy reconstruction
  • 4. C++ Code Reconstruction Problems Class AvfPtra1() a2() A::vfTablemetaA::a1() A::a2() RTTI Object LocatorsignaturepTypeDescriptorpClassDescriptor
  • 7. An overview of the Flamer Framework Vector<Command Executor> DB_Query ClanCmd Vector<Task> IDLER CmdExec Vector<DelayedTasks> Euphoria Share Supplier Vector<Consumer> Mobile Consumer Cmd Consumer Sniffer Munch FileFinder FileCollect Driller GetConfig LSS Sender Frog Beetlejuice Lua Consumer Media Consumer http://www.welivesecurity.com/2012/08/02/flamer-analysis-framework-reconstruction/
  • 8. An overview of the Flamer Framework Vector<Command Executor> DB_Query ClanCmd Vector<Task> IDLER CmdExec Vector<DelayedTasks> Euphoria Share Supplier Vector<Consumer> Mobile Consumer Cmd Consumer Sniffer Munch FileFinder FileCollect Driller GetConfig LSS Sender Frog Beetlejuice Lua Consumer Media Consumer http://www.welivesecurity.com/2012/08/02/flamer-analysis-framework-reconstruction/
  • 9. An overview of the Flamer Framework Vector<Command Executor> DB_Query ClanCmd Vector<Task> IDLER CmdExec Vector<DelayedTasks> Euphoria Share Supplier Vector<Consumer> Mobile Consumer Cmd Consumer Sniffer Munch FileFinder FileCollect Driller GetConfig LSS Sender Frog Beetlejuice Lua Consumer Media Consumer http://www.welivesecurity.com/2012/08/02/flamer-analysis-framework-reconstruction/
  • 10. Identify Smart Pointer Structure oSmart pointers oStrings oVectors to maintain the objects oCustom data types: wrappers tasks, triggers and etc.
  • 11. Data Types Being Used: Smart pointers typedefstructSMART_PTR { void *pObject;// pointer to the object int*RefNo;// reference counter };
  • 13. Data Types Being Used: Vectors structVECTOR { void *vTable;// pointer to the table intNumberOfItems;// self-explanatory intMaxSize;// self-explanatory void *vector;// pointer to buffer with elements }; oUsed to handle the objects: tasks triggers etc.
  • 14. Identify Exact Virtual Function Call in Vtable
  • 15. Identify Exact Virtual Function Call in Vtable
  • 16. Identify Custom Type Operations
  • 17. Data Types Being Used: Strings structUSTRING_STRUCT { void *vTable;// pointer to the table intRefNo;// reference counter intInitialized; wchar_t*UnicodeBuffer;// pointer to unicodestring char *AsciiBuffer;// pointer to ASCII string intAsciiLength;// length of the ASCII string intReserved; intLength;// Length of unicodestring intLengthMax;// Size of UnicodeBuffer };
  • 26. HexRaysCodeXplorerFeatures oHex-Rays decompilerplugin oThe plugin was designed to facilitate static analysis of: object oriented code position independent code oThe plugin allows to: navigate through decompiled virtual methods partially reconstruct object type
  • 27. Hex-Rays DecompilerPlugin SDK oAt the heart of the decompilerlies ctreestructure: syntax tree structure consists of citem_tobjects there are 9 maturity levels of the ctreestructure
  • 28. Hex-Rays DecompilerPlugin SDK oAt the heart of the decompilerlies ctreestructure: syntax tree structure consists of citem_tobjects there are 9 maturity levels of the ctreestructure
  • 29. Hex-Rays DecompilerPlugin SDK oType citem_tis a base class for: cexpr_t–expression type cinsn_t–statement type oExpressions have attached type information oStatements include: block, if, for, while, do, switch, return, goto, asm oHex-Rays provides iterators for traversing the citem_tobjects within ctreestructure: ctree_visitor_t ctree_parentee_t citem_tcexpr_tcinsn_t
  • 30. Hex-Rays Decompiler Plugin SDK o Type citem_t is a base class for:  cexpr_t – expression type  cinsn_t – statement type o Expressions have attached type information o Statements include:  block, if, for, while, do, switch, return, goto, asm o Hex-Rays provides iterators for traversing the citem_t objects within ctree structure:  ctree_visitor_t  ctree_parentee_t citem_t cexpr_t cinsn_t
  • 33. HexRaysCodeXplorer: Virtual Methods The IDA’s ‘Local Types’ is used to represent object type
  • 34. Hex-Rays decompilerplugin is used to navigate through the virtual methods HexRaysCodeXplorer: Virtual Methods
  • 35. Hex-Rays decompilerplugin is used to navigate through the virtual methods HexRaysCodeXplorer: Virtual Methods
  • 36. HexRaysCodeXplorer: Object Type REconstruction oHex-Rays’sctreestructure may be used to partially reconstruct object type based on its initialization routine (constructor) oInput: pointer to the object instance object initialization routine entry point oOutput: C structure-like object representation
  • 37. HexRaysCodeXplorer: Object Type REconstruction citem_tobjects to monitor: memptr idx memref call (LOBYTE, etc.)
  • 38. HexRaysCodeXplorer: Object Type REconstruction //reference of DWORD at offset 12 in buffer a1 *(DWORD *)(a1 + 12) = 0xEFCDAB89;
  • 39. HexRaysCodeXplorerv1.5 [H2HC Edition] oNew citem_tobjects to monitor: memptr idx memref call (LOBYTE, etc.) ptr, asg, …
  • 40. HexRaysCodeXplorerv1.5 [H2HC Edition] oNew citem_tobjects to monitor: memptr idx memref call (LOBYTE, etc.) ptr, asg, … oType propagation for nested function calls
  • 41. HexRaysCodeXplorerv1.5 [H2HC Edition] oFeatures of v1.5 [H2HC Edition] : Better Type Reconstruction •Improvements for parsing citem_tobjects with PTR andASG statements •Recursive traversal of Ctreeto reconstruct Types hierarchy Navigate from Pseudo code window to Disassembly line Hints for Ctreeelements which point to Disassembly line Support for x64 version of Hex-Rays Decompiler Some bug fixes by user requests
  • 43. HexRaysCodeXplorer: -> What are the next goals? oDevelop the next version on IdaPython oFocus on the following features: Type reconstruction(C++, Objective-C) Type Navigation (C++, Objective-C) Vtablesparsing based on Hex-Rays API Ctreegraph navigation improvements Patterns for possible vulndetection
  • 45. Python Arsenal Contesthttp://2014.zeronights.org/contests/python-arsenal-contest.html Best exploit devtool/plugin/lib Best forensics tool/plugin/lib Best reversing tool/plugin/lib Best fuzzing tool/plugin/lib Best malware analysis tool/plugin/lib
  • 46. Thank you for your attention! HexRaysCodeXplorer http://REhints.com@REhints https://github.com/REhints/HexRaysCodeXplorer