# Odzyskiwanie nazw zmiennych w zdekompilowanym kodzie

EN: **Neural variable-name recovery in decompiled code** · id `binsymbolrecovery` · aliases: neural decompilation, variable-name recovery, identifier recovery

Path: [AI Atlas](https://aiatlasgraph.com/llms.txt) › [AI w cyberbezpieczeństwie](https://aiatlasgraph.com/t/cyberai.md) › [Analiza programów binarnych i inżynieria wsteczna z AI](https://aiatlasgraph.com/t/binaryai.md) › Odzyskiwanie nazw zmiennych w zdekompilowanym kodzie

## Description

- PL: Modele uczą się przywracać znaczące nazwy zmiennych utracone podczas kompilacji, korzystając z leksykalnego i strukturalnego kontekstu kodu zdekompilowanego.
- EN: Models learn to restore meaningful variable names lost during compilation by using lexical and structural context from decompiled code.

## In one sentence

- PL: Po kompilacji nazwy takie jak „klucz” czy „bufor” znikają. Model próbuje je odtworzyć z tego, jak zmienne są używane.
- EN: Compilation removes names such as “key” or “buffer.” A model tries to recover them from how variables are used.

## Problem it solves

- PL: Zdekompilowany kod pełen nazw w rodzaju „zmienna7” jest jak książka bez imion bohaterów: wszystko jest, ale nic nie wiadomo.
- EN: Decompiled code full of names like 'var7' is like a novel with no character names: everything's there, but nothing makes sense.

## What it does

- PL: Jak archiwista podpisujący stare zdjęcia: z tła, ubrań i okazji wnioskuje, kto na nich jest.
- EN: Like an archivist labelling old photos: from the background, clothes and occasion they infer who is in them.

## Everyday example

- PL: W zdekompilowanej funkcji model podpowiada nazwy „klucz”, „bufor_wejścia” i „liczba_bajtów” zamiast technicznych identyfikatorów.
- EN: In a decompiled function, the model suggests names such as “key,” “input_buffer,” and “byte_count” instead of technical identifiers.

## This concerns you if you…

- PL: czytasz kod z dekompilatora
- PL: szybko oceniasz, co robi nieznany plik
- PL: interesuje cię przewidywanie nazw w kodzie
- EN: read decompiler output
- EN: need to judge quickly what an unknown file does
- EN: are interested in predicting names in code

## Keywords

DIRE · decompiler · variable-name recovery · identifier recovery · debug symbols · x86-64 · Ghidra · IDA Pro

## How it works

- PL: DIRE uczy się na parach kodu źródłowego i odpowiadających mu plików binarnych. Łączy leksykalny kontekst zdekompilowanego kodu ze strukturą programu, aby przewidywać nazwy zmiennych.
- EN: DIRE learns from source-code and corresponding binary pairs. It combines lexical context from decompiled code with program structure to predict variable names.

## Limits

- PL: Przewidziane nazwy nie muszą odpowiadać oryginałom i mogą być niejednoznaczne. Wynik DIRE pochodzi z plików x86-64 skompilowanych z C; agresywne optymalizacje i zaciemnianie mogą usuwać potrzebny kontekst.
- EN: Predicted names need not match the originals and may be ambiguous. DIRE's result comes from x86-64 binaries compiled from C; aggressive optimization and obfuscation may remove needed context.

## Key terms

- PL: **utrata symboli**: Usunięcie nazw zmiennych i innych informacji debugowania podczas kompilacji lub stripowania pliku.
- PL: **kontekst strukturalny**: Informacja o roli i użyciu zmiennej wynikająca ze struktury zdekompilowanego programu.
- EN: **symbol loss**: Removal of variable names and other debugging information during compilation or binary stripping.
- EN: **structural context**: Information about a variable's role and use derived from the structure of the decompiled program.

## Know first

- [Sieci rekurencyjne (RNN) (Recurrent neural networks (RNN))](https://aiatlasgraph.com/t/rnn.md)

## Sources

- [DIRE: A Neural Approach to Decompiled Identifier Naming](<https://arxiv.org/abs/1909.09029>) `lacomis-dire-2019` · by Jeremy Lacomis, Pengcheng Yin, Edward J. Schwartz, Miltiadis Allamanis, Claire Le Goues, Graham Neubig, Bogdan Vasilescu

---

AI Atlas revision 122 (2026-10-30) · HTML: https://aiatlasgraph.com/t/binsymbolrecovery · index: https://aiatlasgraph.com/llms.txt · everything: https://aiatlasgraph.com/llms-full.txt · updated 2026-10-30
