Wie bereits von delnan erwähnt, ist jedes Programm nur Daten, bis der Prozessor versucht, es auszuführen.
Um selbstmodifizierenden Code zu üben, führen Sie die folgenden Schritte aus:
- Kopiere
notepad.exe
zu notepad_orig.exe
- Starte
notepad_orig.exe
- Öffne
notepad.exe
im nun geöffneten Notepad-Fenster
- Tippe, was auch immer du möchtest
- Speichere und schließe
Vielleicht ein dummer Beispiel, aber hier passiert nichts weiter. Notepad nimmt eine externe Datenquelle (dich!) an, um seinen Code zu ändern.
Wenn du nach Algorithmen suchst, empfehle ich dir, nach einem Framework zu suchen, das automatische Updates für eine Anwendung bereitstellt. Das ist das einzige praktische Beispiel, das mir einfällt, das nicht illegal ist.
In einer Antwort auf deinen Kommentar könntest du natürlich einen Teil deiner Anwendung verschlüsseln und ihn entschlüsseln, bevor er verwendet wird. Allerdings muss eine Anwendung für den Betrieb in ihrem entschlüsselten Zustand im Speicher existieren und kann gelesen werden. Du wirst deine Anwendung wahrscheinlich nur schwerer pflegbar machen.