|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2001
Città: napoli
Messaggi: 5014
|
come?
scusate ragazzi ma se io ho un eseguibile come faccio con il comando gcc a farlo tornare in .c ?
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
non puoi
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Quote:
http://forum.hwupgrade.it/showthread.php?p=8096302
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Jun 2001
Città: napoli
Messaggi: 5014
|
Quote:
o come? |
|
|
|
|
|
|
#5 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
premetto che non lo so, ma ti faccio presente che aldilà di tutto non riuscirai mai a riottenere il codice C originale... quello è un decompilatore, vale a dire un disassemblatore unito ad una mezza IA che riconosce nel codice assembly determinati patterns e cerca di capire quale può essere stato il codice C che li ha generati; ad esempio se vede un CALL preceduto da alcuni PUSH è chiaro che quella era una chiamata di funzione; se vede un jump condizionato è probabile che fosse un IF o un ciclo, e così via...
inoltre se vede un PUSH all'inizio di una funzione e non è seguito da un CALL potrebbe trattarsi della dichiarazione di una variabile locale, ma il decompilatore non sarà mai in grado di sapere il nome originale della variabile, quindi penso che gli dia dei nomi suoi, e lo stesso dicasi per i nomi di funzioni; se ti va bene che ti venga restituito del codice in questa maniera, allora ok... |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Quote:
@71104: anche io credo proprio che sia come tu dici, ma ancora devo provare questo Boomerang, forse riuscirà a farmi cambiare idea...
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Quote:
Codice originale Codice:
#include <sys/types.h>
#include <sys/stat.h>
#include <dirent.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
/* code */
int main(int argc, char * argv[])
{
unsigned long long tot_size = 0;
struct dirent ** namelist;
struct stat infos;
char * path;
int x;
argc--;
argv++;
if (argc == 0)
{
fprintf(stderr, "Usage: stat path_to_stat\n");
return EXIT_FAILURE;
}
if ((x = scandir(argv[0], &namelist, 0, alphasort)) < 0)
{
fprintf(stderr, "Cannot scan directory \"%s\".\n", argv[0]);
return EXIT_FAILURE;
}
while (x--)
{
strcpy(path, "");
strcat(path, argv[0]);
if (strcmp((argv[0]+strlen(argv[0])-1),"/"))
{
strcat(path, "/");
}
strcat(path, namelist[x]->d_name);
if (!stat(path, &infos))
{
tot_size += infos.st_size;
}
else
{
fprintf(stderr, "Cannot stat \"%s\".\n", path);
return EXIT_FAILURE;
}
free(namelist[x]);
}
free(namelist);
printf("Total size: %lldb, %lldkb, %lldmb, %lldgb.\n", tot_size, tot_size/1024, tot_size/1024/1024, tot_size/1024/1024/1024);
return EXIT_SUCCESS;
}
Codice:
int main(int argc, char** argv, char** envp)
{
int local12; // m[r28{0} - 128]
int local13; // m[r28{0} - 80]
int local19; // r30{259}
int local20; // local4{0}
int local21; // r24
int local22; // r30
int local23; // r31
int local4; // m[r28{0} - 140]
int local5; // m[r28{0} - 136]
local4 = 0;
local5 = 0;
if (argc != 1) {
%pc = %pc - 431;
proc7();
if (*(int*)(argv + 4) < 0) {
L2:
proc1();
L1:
local21 = 1;
} else {
if (*(int*)(argv + 4) - 1 == -1) {
L6:
proc3();
proc2();
local21 = 0;
} else {
local22 = *(int*)(argv + 4) - 1;
do {
local19 = local22;
*(char*)(local23) = 0;
proc5();
%pc = %pc - 953;
proc6();
if (*(char*)(*(int*)(argv + 4) + argv + 4 - 1) != 47) {
L13:
%pc = %pc - 1446;
proc5();
} else {
if (*(char*)(*(int*)(argv + 4) + argv + 4) != 0) {
goto L13;
}
}
proc5();
proc4();
if (*(int*)(local12 + local19 * 4) + 11 != 0) {
goto L2;
}
local4 += local13;
local5 += (local13 < 0 ? -1 : 0) + ((unsigned)local20 < (unsigned)local13);
local22 = local19 - 1;
%pc = %pc - 1659;
proc3();
} while (local19 - 1 != -1);
goto L6;
}
}
} else {
proc8();
goto L1;
}
return local21;
}
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jun 2001
Città: napoli
Messaggi: 5014
|
Quote:
|
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
boomerang -v -o /directory/dell/output /percorso/del/file/eseguibile.exe
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Jun 2001
Città: napoli
Messaggi: 5014
|
Quote:
parlo di un file .c x linux.... mica ha il .exe |
|
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Quote:
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Jun 2001
Città: napoli
Messaggi: 5014
|
Quote:
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:35.


















