A tag is a keyword or label that categorizes your question with other, similar questions. Using the right tags makes it easier for others to find and answer your question.
Interactive Disassembler Professional (formerly IDA Pro), a proprietary multi-platform disassembler by Hex-Rays.
The translation of machine code into a human readable assembly code, also the result of such translation.
Windows refers to the Microsoft Windows series of operating systems.
A family of very low-level programming languages, just above machine code, where each statement corresponds to a single machine code instruction.
Process of analyzing live programs through software (e.g. ptrace) or hardware (e.g. JTAGs) devices.
A very popular Windows 32bits debugger written by Oleh Yuschuk. It is free and lightweight and yet powerful and extendable through plugins.
The process of gathering information about a binary file, either with static or dynamic methods.
A family of instruction set architectures originally based on the Intel 8086 CPU that functions with a very wide array of operating systems, including Windows, MacOS X, Linux, BSD, and Solaris.
Process of translating assembly code extracted from a binary file in a structured programming language, such as C.
drive hardware devices and provide a first layer of software services prior to the operating system. Typical examples are BIOS, UEFI, the software runni…
Malware, a portmanteau for malicious software, is software used or created by attackers to disrupt computer operation, gather sensitive information, or gain access to computer systems.
A free and open source POSIX compatible operating system with a monolithic kernel and a kernel module system. Originally created by Linus Torvalds.
a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is considered an intermediate level language.
A Python API to develop IDA Pro plugins which comes bundled with the paid versions of IDA. It allows automation of tasks and even writing loaders and plugins in Python themselves.
Opensource reverse engineering framework to disassemble, debug, analyze, manipulate binary files and more.
Google's Linux-based operating system for mobile devices. Initially developed by Android, Inc., Android is the world's most widely used smartphone platform.
General purpose programming language that uses the procedural and structured programming paradigm.
A family of instruction set architectures based on a RISC architecture developed by British company ARM Holdings. Heavily used in embedded devices such as mobile phones, tablets, set-top boxes, ...
A source level debugger based on `ptrace` for *NIX systems and developed by the GNU project.
Debuggers allow the user to view and change the running state of a program.
store data and code. Can refer to questions about, both, live memory investigation and ROM investigation.
for questions regarding recommendations of frameworks, libraries, programs or hardware tools used during the process of reverse engineering. Please avoid using this tag for tool-specific …
the main executable and object format for Linux, Solaris, *BSD, and many other OSes...
a file format for Windows executables, object code, DLLs, and more. Commonly found extensions of PE files include .exe, .dll, .ocx, .sys, and .scr.
File format refers to the way information and data is encoded and stored in a computer file.
Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems.
the analysis code without actually executing it. This is in contrast to [tag:dynamic-analysis] which executes the code.
Reverting (statically or dynamically) the effect of a binary packer: recovering its original structure and code by removing compression, encryption, protections features..
Any physical device analyzed for reverse engineering purpose. This tag is used to denote that the question is about hardware reverse engineering and not (only) about software reverse engineering.
Process of decoding an encrypted message with an authorized access (knowledge of the protocol, the encryption algorithm and the key).
Process of encoding information such that decoding requires the knowledge of some secret (a key). This tag covers questions about obfuscated and encrypted programs, or tools, but higher level question…
A graphical stand-alone multipurpose debugger for Microsoft Windows, distributed on the web by Microsoft.
General-purpose and high-level programming language. Python supports multiple programming paradigms, including object-oriented, imperative and functional programming styles.
an object-oriented language and runtime environment (JRE). Java programs are platform independent, because they are compiled to bytecode and their execution is handled by a Virtual Machine cal…