explaingit

kernullist/pseudoforge

Analysis updated 2026-05-18

24PythonAudience · researcherComplexity · 4/5Setup · hard

TLDR

An IDA Pro plugin that cleans up decompiled Windows kernel driver code, turning raw addresses and hex codes into readable names before any AI-suggested renames are applied.

Mindmap

mindmap
  root((PseudoForge))
    What it does
      Cleans decompiled pseudocode
      Decodes NTSTATUS codes
      Detects kernel patterns
    Tech stack
      Python
      IDA Pro
      Hex-Rays decompiler
    Use cases
      Reverse engineer kernel drivers
      Decode IOCTL dispatch tables
      Review AI rename suggestions safely
    Audience
      Security researchers
      Reverse engineers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Turn unlabeled hex constants into readable NTSTATUS error names

USE CASE 2

Decode Windows kernel IOCTL dispatch tables during analysis

USE CASE 3

Preview and approve rename suggestions before touching the real IDA project

USE CASE 4

Export cleaned pseudocode, rename maps, and flow reports as separate files

What is it built with?

PythonIDA ProHex-Rays

How does it compare?

kernullist/pseudoforge0311119/free_registertool18597990650-lab/multi-agent-game
Stars242424
LanguagePythonPythonPython
Setup difficultyhardhardmoderate
Complexity4/54/53/5
Audienceresearcherdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires IDA Pro 9.x or newer with a paid Hex-Rays decompiler license.

Unknown from the description, check the repository for license terms.

In plain English

PseudoForge is a plugin for IDA Pro, a professional tool used by security researchers and reverse engineers to analyze compiled software. When IDA Pro decompiles a binary, turning raw machine code back into something resembling readable C code, the output is often messy: variable names are generic placeholders, structure fields appear as raw byte offsets, and important constants show up as unlabeled numbers. PseudoForge takes that output and applies a structured cleanup pass to make it easier to read and analyze. The plugin follows a deterministic-first design, meaning it does not let an AI model rewrite arbitrary code and call it a day. Instead, it builds a validated plan from pattern-matching rules it knows are correct, then optionally adds rename suggestions from a language model, but only if those suggestions also pass the same validator. Nothing changes in your IDA project file until you explicitly approve it after reviewing a preview. The cleanup covers several categories of Windows kernel driver patterns. It recognizes NTSTATUS error codes and replaces hex literals like 0xC0000005 with their human-readable names. It detects linked-list traversal patterns from the Windows kernel, decodes memory pool tags stored as four-byte constants, and handles IOCTL dispatch tables including the decoded control codes in switch-case comments. It also annotates ERESOURCE locks, object reference counting calls, and pool allocation patterns with context that would otherwise require manual lookup. Output appears as a side-by-side preview inside IDA using a custom viewer, and as a set of files written next to the analyzed binary: cleaned pseudocode, a rename map, a switch-case outline, and a flow report. The actual IDA database is only modified if you trigger the rename action after reviewing the plan, so the plugin cannot make any changes without your explicit sign-off. The plugin requires IDA Pro 9.x or newer with the Hex-Rays decompiler license. An offline command-line path is also included for smoke testing without a running IDA instance. The project is at version 0.1.0 and the core engine, deterministic rules, interactive preview, and export workflow are all validated. Optional AI-assisted renaming is available through multiple providers but remains an add-on, not the primary mechanism.

Copy-paste prompts

Prompt 1
Explain how PseudoForge's deterministic-first design differs from letting an AI rewrite code directly
Prompt 2
Walk me through analyzing a Windows kernel driver binary with PseudoForge in IDA Pro
Prompt 3
Show me how memory pool tag decoding works in this plugin
Prompt 4
Help me set up the offline command-line path for testing without a running IDA instance

Frequently asked questions

What is pseudoforge?

An IDA Pro plugin that cleans up decompiled Windows kernel driver code, turning raw addresses and hex codes into readable names before any AI-suggested renames are applied.

What language is pseudoforge written in?

Mainly Python. The stack also includes Python, IDA Pro, Hex-Rays.

What license does pseudoforge use?

Unknown from the description, check the repository for license terms.

How hard is pseudoforge to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is pseudoforge for?

Mainly researcher.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.