@ rhaymo
Se intendi il programma non lo so, mi leggerò meglio quando avro tempo i tutorial su Python.
@ boboav, l'argomento che stai portando alla luce si chiama REVERSE ENGINERING ed è il tentativo di certi programmi (DESASSEMBLER) di risalire se non al codice originale almeno al linguaggio Assembly che anche se è un liguaggio di programmazione come Python assomiglia più al livello base base cioè al linguaggio macchina cioè una serie di istruzioni del tipo: metti il valore a in questo posto sommalo al valore b sostituisci la memoria ecc... (rahymo te lo spiega meglio) che in python si scrive a+b=c.
Sfido chiunque a capire il codice di un programma se anche 2+2 è scritto in una facciata di codice!!!
Infatti esistono questi programmi come Python che permettono di non scrivere il linguaggio macchina ma una lora rappresentazione, quando vengono "compilati" o trasformati in "exe" il programma scrive il linguaggio macchina.
Il problema di fondo è che ad esempio i cicli o le funzioni tanto semplici da capire in python vengono trasformate in una serie di operazioni che deve fare la machina e la procedura inversa non darà mai lo stesso risultato.
Esempio solo per farti capire, se scrivi x= 2+2 o 3+1 o 5-1 e poi il compilatore lo trasforma in linguaggi macchina cioè x=4 come puoi risalire al codice che ha generato quella operazione.
Quindi il codice lo puoi scivere in mille modi diversi (comprensibili ad un essere umano che riesce a vederli nel comlplesso e capirne il funzionamento) ma una volta trsformato in instruzioni del computer perdi tutte quelle strategie, scorciatorie, modi di scriverlo che avevi adottato