
Disassembler, Decompiler und Debugger im x64dbg-Stil für PE/ELF-Binärdateien mit Listing im IDA-Stil, Funktionsgraphen, Lua-Plugins, CLI und einem integrierten MCP-Server für KI-gesteuerte Analyse.
ein Disassembler, Decompiler und Debugger in einem — für Windows, Linux und macOS, x86, x64 und arm64
IDA-artiges Listing, ein Decompiler, ein Funktionsgraph, ein x64dbg-artiger Debugger, Lua-Plugins und ein integrierter MCP-Server, mit dem du eine KI auf eine Binärdatei ansetzen kannst — ein kleines Programm, alles mitgeliefert, nichts zu installieren, um es zu bauen.

ceasta zeigt denselben Code von den rohen Bytes bis hin zu lesbarem C, sodass du auf die Ebene wechseln kannst, die du gerade brauchst:
; assembly - the real instructions // pseudocode (f5) - reconstructed c
checksum proc int checksum(int rdi)
movzx edx, byte ptr [rdi] {
test dl, dl rdx = *(char*)rdi;
je loc_1191 if (rdx == 0) {
mov eax, 0x1505 return 0x1505;
loc_1179: }
mov ecx, eax rax = 0x1505;
shl ecx, 5 do {
add eax, ecx rax = rax + (rax << 5) + rdx;
add rdi, 1 rdi = rdi + 1;
movzx edx, dl rdx = *(char*)rdi;
add eax, edx } while (rdx != 0);
movzx edx, byte ptr [rdi] return rax;
test dl, dl }
jne loc_1179
ret
loc_1191:
mov eax, 0x1505
ret
das ist djb2 (5381 ist 0x1505, und (h << 5) + h ist h * 33). klicke im Pseudocode auf einen Namen und benenne die Dinge so, wie du sie verstehst — y auf der Funktion gibt ihr einen Prototyp, n benennt eine Variable um:
unsigned checksum(const char* s)
{
rdx = *(char*)s;
if (rdx == 0) {
return 0x1505;
}
h = 0x1505;
do {
h = h + (h << 5) + rdx;
s = s + 1;
rdx = *(char*)s;
} while (rdx != 0);
return h;
}
der Decompiler ist Best-Effort (x86 / x64, noch keine Structs) — ideal, um schnell eine Routine zu erhalten, während das Listing die Quelle der Wahrheit bleibt.
Hol es dir von der Releases-Seite:
| Datei | Plattform | Was du bekommst |
|---|---|---|
ceasta-x.y.z-setup.exe | Windows 10/11 x64 | die vollständige App, installiert für deinen Benutzer (kein Admin), Startmenü + optionales „Mit Ceasta öffnen“ |
ceasta-x.y.z-windows-x64.zip | Windows x64 | die vollständige App, portabel — entpacken und ceasta.exe ausführen |
ceasta-x.y.z-linux-x64.AppImage | Linux x64 | die vollständige App — chmod +x und ausführen (unter Linux) |
ceasta-cli-x.y.z-linux-x64.tar.gz | Linux x64 | ceasta-cli + Plugins: Analyse, Disassembly, Decompiler, Skripting, Terminal-Debugger, Binär-Diff, Signaturen und der MCP-Server |
ceasta-x.y.z-macos.dmg | macOS 11+, Apple Silicon und Intel | die App, noch kein Debugger — ziehe sie in den Ordner „Programme“ (auf einem Mac) |
ceasta-cli-x.y.z-macos.tar.gz | macOS 11+, Apple Silicon und Intel | ceasta-cli + Plugins, alles oben Genannte außer dem Debugger |
n benennt ihn um, y legt einen Typ oder einen Prototyp fest. Umschalt+F5 zeigt ihn neben dem Listingkuna-Schalter — dessen Ausgabe für dieselbe Funktion, Zeilen mit dem Listing verknüpft, auch arm64. mehr untenrdi == 3), Watchpoints auf Variablen, Step Into / Over / Out, Step Back, Run to Cursor, Pause, Register, Stack, Call Stack, Memory Map, Live-Speicher
call decrypt "..."), zeichne indirekte Call-Targets als Xrefs auf (trace)ceasta-cli dbg: derselbe Debugger in einem Terminalsigmake / sigapply)ceasta-cli mcp — mit fertigen Prompts und Namen, die du prüfst, bevor sie angewendet werden. siehe eine KI verbinden.i64: Strg+S schreibt <file>.ceasta mit deinen Namen, Kommentaren, Typen, Breakpoints und dem Programm selbst — sie öffnet sich später oder auf einem anderen Rechner, ohne das Original. Beim Schließen wird nachgefragt, bevor ungespeicherte Arbeit verworfen wird.map-Dateien und IDA / Ghidra (mit den Skripten in scripts/)ceasta-cli für Skripte und CIein Fenster, nichts schwebt herum: