Der Vorteil meiner Variante ist, dass sie nicht nur zufällig funktioniert
Deine Variante funktioniert nur deshalb, weil das Ergebnis einer Funktion und der erste Parameter zufällig beide das register EAX belegen. Gibt dein Delphi keine Warnung aus, dass das Ergebnis der Funktion undefiniert ist?