Olá
Tenho antigo servidorzinho em C do Linux. Preciso ver algumas coisas nos fontes porque não tenho mais as documentações. Há algum programinha que descompile C?
[]s
Luca
Olá
Tenho antigo servidorzinho em C do Linux. Preciso ver algumas coisas nos fontes porque não tenho mais as documentações. Há algum programinha que descompile C?
[]s
Luca
O máximo que um programa vai fazer é gerar uma listagem muito boa do código em asm, traduzindo constantes, syscalls, chamas para as .so linkadas e entry/exit point de funções.
Mais que isso acho improvavel conseguir. Se lembro bem o bastard (procura na sf.net) faz isso tudo. Talvez, com sorte, você ache algum outro programa que demarque os basic blocks das funções.
Vale lembrar que descompilar código de máquina é um do problemas mais dificeis da computação e dependendo daquilo que você quer, é computacionalmente impossivel. Se o código foi vítima de um otimizador, fica pior ainda.
Você pode tentar examinar o comportamento do programa rodando. Eu sei que em Solaris você pode efetuar o trace das system calls com truss ou dtrace, mas em Linux, como de costume, não sei qual é o comando que faz isso.
strace
gdb ? :twisted: