oh, unter win98 war das meines wissens noch nicht möglich. Letzendlich läuft es auf folgende Vorgehensweise hinaus. Du musst eine andere Anwendung (z.B.: notepad.exe) starten aber suspended. Dann den Speicher des Prozesses zum schreiben öffnen und deine Anwendung an die stelle plazieren. Anschließend den Prozess weiterlaufen lassen. Deine Anwendung würde dann also als Notepad.exe laufen. Ganz ohne Fremdprozess geht es nicht. (kannst es ja aber auch als deine eigene Exe laufen lassen, ist dann nur verwirrend für leute welchen in den Taskmanager schauen wenn dein Programm 2 mal auftaucht).
Was hindert dich daran upx zu extrahieren? ich glaub das entspricht auch am ehesten den Nutzungsbedingungen.