# LazyIDA

> Single-file IDA plugin of convenience actions first written for CTF work. In the disassembly and hex views it dumps a selection as a string, hex string, C/C++ array or Python list of bytes, words, dwords or qwords and copies the result to the clipboard, shows a selection XORed with one byte, fills it with NOPs, and copies or jumps to addresses and file offsets by hotkey. With Hex-Rays it toggles a function’s return type to void, copies item names and jumps to the member function behind an obj->func call on double-click, while a heuristic scan lists printf-family calls whose format argument is not a read-only constant.

- Type: Tool
- Targets: Binary
- Category: Native analysis tools
- Relationship: Foundation tool
- Sources reviewed: 2026-10-20
- Added to the catalog: 2026-11-02
- Original resource: <https://github.com/L4ys/LazyIDA>
- Primary source: <https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/README.md>
- Catalog page: <https://awesomerea.org/resources/lazyida/>
- Record JSON: <https://awesomerea.org/resources/lazyida/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/lazyida/index.md)

## Requirements & limits

- The reviewed master commit is three commits after the v1.1.0 release of 2026-01-25; LazyIDA.py now declares 1.1.1 while ida-plugin.json still says 1.1.0. The plugin is the single LazyIDA.py file, installed with Hex-Rays’ hcli plugin command or copied into the IDA plugins directory. ida-plugin.json asks for IDA 7.4 or later on Windows x86-64, Linux x86-64 and macOS x86-64 or arm64; the changelog adds IDA 9.0 and 9.2 support, and clipboard access uses PySide6 on IDA 9.2+ and PyQt5 on earlier GUI builds.
- It works on whatever database the user opens in IDA and bundles no sample binaries. The Hex-Rays actions load only when a Hex-Rays decompiler initialises. The format-string scan is offered in the disassembly view only for 32- and 64-bit x86 and 32-bit ARM databases; it walks back from each call to printf-family functions in .text, .plt, .idata or .plt.got using fixed register and stack-slot conventions, so its hits are leads to check by hand, not confirmed vulnerabilities.
- The README says the project was written casually about ten years ago and that several features are now outdated: return-type removal is built into IDA 7.5+, IDA’s Shift-E export can replace the dump actions, and the format-string scan should be reimplemented with the Hex-Rays API; it points users to HappyIDA instead. Multi-byte dumps decode little-endian values, and Fill with NOPs writes x86 0x90 bytes into the database whatever the architecture.
- The repository has no tests or CI. MIT per LICENSE and ida-plugin.json; IDA Pro and the Hex-Rays decompiler keep their own licences.

## Primary sources

1. <https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/README.md>
2. <https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/LazyIDA.py>
3. <https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/ida-plugin.json>
4. <https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/CHANGELOG.md>
5. <https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/LICENSE>
6. <https://github.com/L4ys/LazyIDA/releases/tag/v1.1.0>

## More in Native binaries

- [Tiny Tracer](https://awesomerea.org/resources/tiny-tracer/index.md) · Tool
- [Ponce](https://awesomerea.org/resources/ponce/index.md) · Tool
- [DRAKVUF Sandbox](https://awesomerea.org/resources/drakvuf-sandbox/index.md) · Tool
- [HexRaysPyTools](https://awesomerea.org/resources/hexrayspytools/index.md) · Tool
- [CAPE Sandbox (CAPEv2)](https://awesomerea.org/resources/capev2/index.md) · Tool
- [LuaDec](https://awesomerea.org/resources/luadec/index.md) · Tool

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
