
ferramenta de engenharia reversa com um servidor MCP integrado: uma IA pode depurar seu binário, não apenas lê-lo — breakpoints, stepping, memória, chamada de funções. disassembler + decompilador + depurador estilo x64dbg em um só. GUI para windows, CLI para linux.
um desmontador, descompilador e depurador em um só — para windows e linux
listagem no estilo ida, um descompilador, um grafo de funções, um depurador no estilo x64dbg, plugins lua e um servidor MCP integrado para você apontar uma IA para um binário — um pequeno programa, tudo embutido, nada para instalar para compilar.

ceasta mostra o mesmo código desde os bytes brutos até c legível, para você descer ao nível que precisar:
; 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
isso é djb2 (5381 é 0x1505, e (h << 5) + h é h * 33). o descompilador é best-effort: ainda sem tipos ou structs, então você lê registradores e casts — ótimo para obter uma rotina rapidamente, enquanto a listagem continua sendo a fonte da verdade.
pegue na página de releases:
| arquivo | plataforma | o que você recebe |
|---|---|---|
ceasta-x.y.z-setup.exe | windows 10/11 x64 | o app completo, instala para o seu usuário (sem admin), menu iniciar + opcional "abrir com ceasta" |
ceasta-x.y.z-windows-x64.zip | windows x64 | o app completo, portátil — descompacte e execute ceasta.exe |
ceasta-cli-x.y.z-linux-x64.tar.gz | linux x64 | ceasta-cli + plugins: análise, desmontagem, descompilador, scripting, depurador de terminal (no linux) |
ceasta-cli dbg) — breakpoints, stepping, registradores, memória. básico mas real; melhor em alvos single-threadedcall decrypt "..."), registrar alvos de chamadas indiretas como xrefs (trace)sigmake / sigapply)<binary>.ceasta ao lado dele, que pode ser versionadoceasta-cli para scripts e ciuma janela, nada flutuando por aí:

o descompilador (f5):

| tecla | o que faz | tecla | o que faz |
|---|---|---|---|
| ctrl+o | abrir um arquivo | espaço | listagem / grafo |
| g | pular para endereço ou nome | f5 | pseudocódigo (descompilador) |
| enter / duplo clique | seguir o operando | alt+b | buscar bytes |
| esc / ctrl+enter | voltar / avançar | f9 | iniciar depuração / continuar |
| n | renomear | f7 / f8 | step into / over |
| ; | comentário | f4 | executar até o cursor |
| x | referências para cá | f2 | alternar breakpoint |
| ctrl+s | salvar nomes e comentários | f1 | todos os atalhos |
plugins são arquivos lua em plugins/ (ao lado do programa) ou em %APPDATA%\ceasta\plugins. eles adicionam comandos ao menu de plugins. cinco vêm com ele: resumo de arquivo, localizador de cripto, nomeador de wrappers, relatório de strings, rastreador de chamadas (depurador).
ceasta.register_command("Count calls", function()
local n = 0
for _, fn in ipairs(ceasta.functions()) do
n = n + #ceasta.xrefs_to(fn.addr)
end
ceasta.log(n .. " references to functions")
end)
a api completa está no guia de scripting lua. o painel de saída também tem um prompt lua — tente ceasta.name(ceasta.here()).
ceasta-cli info file.exe format, entry, segments
ceasta-cli funcs file.exe functions
ceasta-cli disasm file.exe main 40 listing from a name or address
ceasta-cli graph file.exe start basic blocks of a function
ceasta-cli decompile file.exe main pseudocode for a function
ceasta-cli xrefs file.exe CreateFileW
ceasta-cli find file.exe "48 8b ?? 05"
ceasta-cli run file.exe script.lua run a plugin / script
ceasta-cli dbg ./program [args] interactive debugger (linux + windows)
ceasta-cli diff old.exe new.exe match functions, show what changed
ceasta-cli sigmake libc.a lib.sig make signatures from a file with symbols
ceasta-cli sigapply stripped lib.sig name matching functions
ceasta-cli mcp file.exe serve the file to an AI over MCP
aponte uma IA (Claude Code, Claude Desktop, Cursor, ...) para o binário através do servidor MCP integrado do ceasta:
claude mcp add ceasta -- ceasta-cli mcp /path/to/target.exe
ela pode descompilar, ler xrefs, renomear funções, comparar builds e — com --allow-debug — definir
breakpoints, dar step, ler memória e até chamar uma função no programa em execução. o guia completo,
incluindo as ferramentas do depurador e as notas de segurança, está em conectar uma IA.
a gui é exclusiva para windows, mas a ferramenta de linha de comando faz a análise, desmontagem, descompilador, scripting e um depurador de terminal. pegue ceasta-cli-x.y.z-linux-x64.tar.gz, descompacte e execute — nada mais para instalar:
tar xzf ceasta-cli-*-linux-x64.tar.gz
cd ceasta-cli-*-linux-x64
./ceasta-cli info /bin/ls format, entry, function / import / string counts
./ceasta-cli decompile /bin/ls start pseudocode for the entry point
./ceasta-cli run /bin/ls plugins/hello.lua run a lua plugin
./ceasta-cli dbg ./program debug it (break, step, registers, memory)
ele lê elf (x86 / x64) e arquivos pe do windows igualmente, então você pode olhar um exe do windows a partir do linux também.
o depurador de terminal (dbg) é um depurador ptrace com os nomes, a desmontagem e o descompilador do ceasta integrados:
(ceasta) b main break at a name or address
(ceasta) c continue
(ceasta) ni / si step over / into until <addr> run to
(ceasta) r registers k stack x <addr> memory
(ceasta) u disassemble here (with names)
(ceasta) dec decompile the function you're stopped in
(ceasta) lua ... run lua against the live process
tudo o que é necessário está no repositório — apenas um compilador, nada para baixar.
windows
ceasta.sln, escolha Release | x64, compile → build\msvc\Releasecmake -S . -B build e depois cmake --build build --config Releasepowershell -ExecutionPolicy Bypass -File installer\package.ps1linux (core + cli, a gui é exclusiva para windows)
cmake -S . -B build && cmake --build build -j
src/app.* — estado, ações e o layout principalsrc/ui/ — um arquivo por painel (top_bar, left_panel, ida_view, graph_view, pseudo_view, right_panel, cpu_panel, bottom_panel, status_bar, dialogs)src/widgets/ — pequenos componentes compartilhados (nav_band, splitter)src/core/ — sem ui: loaders (binary, pe, elf), disasm (capstone), analysis, database, decompiler, lua_host, debugger (win32) + debugger_linux (ptrace), ossrc/cli/ — ceasta-cli e o depurador de terminal dbgplugins/ — plugins lua que vêm com eledocs/ — o guia lua, o changelog, licenças de terceiros, capturas de telainstaller/ — script do inno setup e empacotamentothird_party/ — imgui, capstone (somente x86), lua 5.4ceasta é GPLv3. as bibliotecas embutidas mantêm suas próprias licenças (permissivas) — dear imgui e lua são MIT, capstone é BSD; detalhes em docs/THIRD_PARTY_NOTICES.md.