DOMANDA Come modificare codice file.exe

Pubblicità
Stato
Discussione chiusa ad ulteriori risposte.

vegetablu

Nuovo Utente
Messaggi
93
Reazioni
1
Punteggio
34
Buon giorno a tutti!:fumato:
Stamattina mi sono svegliato con una pazzia (se così si può definire). :asd:
Avrei pensato di scompattare il codice di qualche file.exe (sul mb, perchè diventerebbe lungo da leggere).
Io conosco bene il linguaggio C e C++.

Domande:
1) i file.exe dentro con quale linguaggio sono scritti?
2) programmi che possono leggere i file.exe a mò di blocconote?

Grazie mille e scusate la mia pazzia ahahahahahahaha
:thanks:

- - - Updated - - -

Ho letto in giro che esiste ida free.
Pareri?
 
Penso che non e' che sei pazzo ma sei semplicemente ignorante di informatica.

Un exe e' un file in binario.
Gli unici programmi che possono leggere e modificare un exe sono gli editor esadecimali, ma devi sapere cosa toccare e le modifiche apportabili sono solo minime e secondarie.
 
Penso che non e' che sei pazzo ma sei semplicemente ignorante di informatica.

Un exe e' un file in binario.
Gli unici programmi che possono leggere e modificare un exe sono gli editor esadecimali, ma devi sapere cosa toccare e le modifiche apportabili sono solo minime e secondarie.

Hai azzeccato alla grande hihihihiihihihih
Come editor qali mi consigli?
Grazie

PS. Non ci sono emulatori di file, cioè che iesci a vedere cosa vanno a modificare uando vengono esegiti? Ad esempio se ho un programmmino in automatico aprirà il prompt dei comandi e andrà a digitare del codice che modificherà un registro o altro.
Grazie
 
..ai miei tempi (vedi il mio avatar) cambiavo i .exe dei computer Commodore (che si chiamavano .sys) usando, come dice Mursey, un editor esadecimale che pero' traduceva le istruzioni binarie in un" macrolinguaggio" chiamato Assembler, lievemente piu' comprensibile rispetto ai puri numeri esadecimali.
Questo linguaggio era comunque molto "criptico" poiche' constava di istruzioni a bassissimo livello del tipo: metti il numero FF nell'accumulatore.. metti a 0 il primo bit del registro A1, somma l'accumulatore al registro B1, poni il risultato nell'indirizzo di memoria ABF9...
Il manuale di questo linguaggio aveva circa 900 pagine, e ci ho messo 2 anni per impararlo senza pero' padroneggiarlo davvero.. e si trattava di un processore di 30 anni fa... centomila volte piu' semplice di quelli attuali!!!!!!!!

Mi sa che, come dicevi, l'altra mattina ti eri davvero svegliato con una pazzia :sisi:
 
..ai miei tempi (vedi il mio avatar) cambiavo i .exe dei computer Commodore (che si chiamavano .sys) usando, come dice Mursey, un editor esadecimale che pero' traduceva le istruzioni binarie in un" macrolinguaggio" chiamato Assembler, lievemente piu' comprensibile rispetto ai puri numeri esadecimali.
Questo linguaggio era comunque molto "criptico" poiche' constava di istruzioni a bassissimo livello del tipo: metti il numero FF nell'accumulatore.. metti a 0 il primo bit del registro A1, somma l'accumulatore al registro B1, poni il risultato nell'indirizzo di memoria ABF9...
Il manuale di questo linguaggio aveva circa 900 pagine, e ci ho messo 2 anni per impararlo senza pero' padroneggiarlo davvero.. e si trattava di un processore di 30 anni fa... centomila volte piu' semplice di quelli attuali!!!!!!!!

Mi sa che, come dicevi, l'altra mattina ti eri davvero svegliato con una pazzia :sisi:
Mmh capisco. Quindi non ho niente da fare ufff.
Ti spiego meglio cosa volevo tentare di fare.
Volevo scompattare una patch che mi allunga la data di scadenza di tot giorni. Io volevo modificare questo tot, ad esempio anzicchè 120giorni in 240giorni o 500giorni, ecc.
Quindi su questo posso perderci le speranze.
A meno che sbatto la testa e faccio una patch io (mission impossible) ahahahhahahahahahahhah
Dico bene oppure ho qualche alternativa?
Grazie
 
... se fosse una patch abbastanza "nota", e la tua un esigenza comune tra i suoi utilizzatori, potresti trovare sul web qualche suggerimento (del tipo dove andare a "smanettare" per modificare il parametro che ti interessa..).
 
... se fosse una patch abbastanza "nota", e la tua un esigenza comune tra i suoi utilizzatori, potresti trovare sul web qualche suggerimento (del tipo dove andare a "smanettare" per modificare il parametro che ti interessa..).

Il problema questo è. Non si trova ;-)
Il bello sarebbe stato essere in gradoo di modificarlo io stesso. Non solo per una semplice patch, ma per la gloria di saperlo fare su quel file e su altri file ;-)
 
Come ti hanno detto, devi conoscere l'assembly. Il classico Hello World equivale a:
Codice:
	.file	"f.c"
	.section	.rodata.str1.1,"aMS" [MENTION=20343]prog[/MENTION]bits,1
.LC0:
	.string	"Hello World!"
	.section	.text.startup,"ax" [MENTION=20343]prog[/MENTION]bits
	.globl	main
	.type	main, @function
main:
	pushq	%rax
	movl	$.LC0, %edi
	call	puts
	xorl	%eax, %eax
	popq	%rdx
	ret
	.size	main, .-main
	.ident	"GCC: (GNU) 4.8.2"
	.section	.note.GNU-stack,"" [MENTION=20343]prog[/MENTION]bits

Chiaramente modificando la stringa Hello World vedrai un risultato differente.
 
Capisco. Grazie mille.
Qualche programma per renderlo in questo modo il file.exe?
Così cerco di imparare l'assembly ;-) e nel mentre smonto qualche file per provarli.
Vedo che utilizzi Linux; io uso objdump (è al 99% già installato).
La sintassi è:
Codice:
objdump -d fileDaDisassemblare
Ti avverto che l'assembly linux (GAS) è molto più ostico di quello usato su Windows. Se hai installato VC++, è incluso in esso un disassemblatore. Inoltre, l'output dei compilatori può essere estremamente difficile da leggere, dato che essi performano delle ottimizzazioni tramite algoritmi complessi.
Ti cito uno scherzoso messaggio a riguardo:
Hello, I am a compiler.I just scanned thousands of lines of code while you were reading this sentence. I browsed through millions of possibilities of optimizing a single line of yours using hundreds of different optimization techniques based on a vast amount of academic research that you would spend years getting at. I won't feel any embarrassment, not even a slight ick, when I convert a three-line loop to thousands of instructions just to make it faster. I have no shame to go to great lengths of optimization or to do the dirtiest tricks. And if you don't want me to, maybe for a day or two, I'll behave and do it the way you like. I can transform the methods I'm using whenever you want, without even changing a single line of your code. I can even show you how your code would look in assembly, on different processor architectures and different operating systems and in different assembly conventions if you'd like. Yes, all in seconds. Because, you know, I can; and you know, you can't.
P.S. Oh, by the way you weren't using half of the code you wrote. I did you a favor and threw it away.

Se vuoi proprio imparare l'assembly, ti consiglio di iniziare da quello x86 a 16 bit, di cui troverei un ottimo tutorial su questo sito: Giobe®2000 - I segreti del tuo computer - Lezioni inedite, Tutorial, programmazione, trucchi [Assembler, Assembly, Pascal]
 
Ultima modifica:
Volevo scompattare una patch che mi allunga la data di scadenza di tot giorni. Io volevo modificare questo tot, ad esempio anzicchè 120giorni in 240giorni o 500giorni, ecc.

Quindi vorresti fare una sorta di crack ?
chiediamo a @Federico83 cosa ne pensa...
 
si possono fare i re-arm per 3/4 volte perché devi craccare il sistema?
 
Quindi vorresti fare una sorta di crack ?
chiediamo a @Federico83 cosa ne pensa...
Assolutamente NO! Cosa ne dovrebbe pensare della tua interpretazione errata?

si possono fare i re-arm per 3/4 volte perché devi craccare il sistema?
Ma perchè di crack parlate?

Io utilizzo un programma (come tutti) che scade dopo "esempio 100giorni".
Utilizzo un tool che lo fa rimanere attivo per altri "esempio 50 giorni".
Volevo modificare il tool, e non il programma, modificando quindi questi 50giorni e portandoli a "esempio 60" giorni.

Diciamo che la modifica del tool era solo usa scusa per imparare a modificare i file.exe
Ma da queste risposte ho imparato che non è così facile come pensavo.
 
mmm...questo tool dovrebbe modificare la chiave di registro del programma in cui è presente il valore dei giorni di prova, se è così fai prima a programmare il tool...mi fermo qui perché penso che questi argomenti siano tabù in questo forum.
 
Assolutamente NO! Cosa ne dovrebbe pensare della tua interpretazione errata?


Ma perchè di crack parlate?

Io utilizzo un programma (come tutti) che scade dopo "esempio 100giorni".
Utilizzo un tool che lo fa rimanere attivo per altri "esempio 50 giorni".
Volevo modificare il tool, e non il programma, modificando quindi questi 50giorni e portandoli a "esempio 60" giorni.

Diciamo che la modifica del tool era solo usa scusa per imparare a modificare i file.exe
Ma da queste risposte ho imparato che non è così facile come pensavo.

Non e' facile come pensavi
e comunque stai parlando di una cosa illegale.
 
Stato
Discussione chiusa ad ulteriori risposte.
Pubblicità
Pubblicità
Indietro
Top