Theoretisch ja.
Da Exectutable Dateien aus Assemblerbefehlen usw. bestehen kann man diese
mit diversen Disasseblern in die Assembler-Programiersprache "wandeln".
Jetzt müsste man diesen wieder in eine Delphisprache umsetzen.
Da aber alle Variablen, Funktionen und Prozedurennamen nicht mehr existent sind
würden diese durch neue, anders benannte ersetzt werden. Das wiederum würde
den Code schwer lesbar machen.
Was die Fenster (Forms) angeht, ist nur dann möglich wenn sie als Resource
mit in die Exectutable übernommen wurde, also bei der VCL-Programmierung.
Bei einigen nonVCL-Programmen werden diese direkt im Programmcode erzeugt.