Programování

C / C ++ dekompilátor překládá programy, není potřeba žádný zdrojový kód

S novým dekompilátorem pro C / C ++ mohou vývojáři získat přehled o fungování programu, aniž by se museli dívat na zdrojový kód. To je plán pro Sněhuláka, od kterého hlavní vývojář projektu doufá, že bude podobný dekompilaci LLVM.

Sněhulák dekompiluje ze strojového kódu na C s menší podporou C ++ a zdrojový kód by měl být vydán během několika měsíců, uvedl vedoucí e-mailu Yegor Derevenets, univerzitní student v Německu, v e-mailové odpovědi na otázky.

Tato technologie je „vysoce modulární,“ řekl Derevenets. "Je založen na knihovně dekompilace, kterou lze snadno integrovat do jiných systémů." Jako příklad poskytujeme tři aplikace, které jej používají: dekompilátor příkazového řádku, dekompilátor grafického uživatelského rozhraní a plug-in IDA disassembler. Doufejme, že po vydání jeho zdrojového kódu se Snowman nakonec stane LLVM pro dekompilaci.

"Účelem dekompilátoru je překládat programy v reprezentaci na nízké úrovni, jako je strojový kód nebo bytecode, na programy v programovacím jazyce na vysoké úrovni, jako je C, C ++ nebo Java a C #," uvedl Derevenets. "Takový překlad může být užitečný pro lidi, kteří se snaží pochopit, jak program na nízké úrovni funguje, aniž by měli přístup k jeho zdrojovému kódu: bezpečnostní inženýři, virální analytici, správci starých systémů, jejichž kód je ztracen."

Aktuální vydání Snowmana verze 0.0.5 obsahuje úpravy kódu C / C ++, refaktoring, navigaci v kódu a vylepšení výkonu grafického uživatelského rozhraní. Od června bylo vydáno šest bodových vydání, včetně vydání z poloviny října s modulem plug-in pro IDA disassembler.