Da es sich am Anfang nur um
lea edi, [eax].THash_SHA.FDigest
handelt, könnte man das Offest auch per Parameter reingeben.
Oder, ich würde mich einfach mal unbeliebt machen, und das Alte endlich rauswerfen.
Bezüglich Multiplatform wäre es schön, wenn es garkeinen Assembler gäbe, bzw. zusätzlich auch das nochmal in PurePascal.
Und in Hinblick auf 64 Bit gibt es noch dass Problem, dass es keinen Inline-Assembler mehr gibt.
Nur noch ganz oder garnicht = komplette Funktionen.
Also der Aufruf von SHABuffer müsste mit ins Assembler rein, oder das Assembler in eine eigene Funktion refaktoriert werden.