Ich weiß nicht ob es ein Fehler meiner Deklaration ist oder Delphi ein Problem hat.
Oder es am Namen Finalize liegt.
Ich kann dir zwar jetzt nicht genau sagen wo dein Fehler liegt, aber die Funktion Finalize gibt es bei Delphi schon. Da deine Funktion wahrscheinlich im Kontext früher kommt als die aus den System Units, wird wohl deine verwendet.
Aber den Namen kannst du ja ganz einfach mal ändern indem du bei der Deklaration der Funktion den Namen auf FinalizeDLL oder so änderst und den Namen der entsprechenden
DLL-Funktion mit übergibst.
function FinalizeDLL(ptr:integer):long; stdcall; external 'asignRKCom.dll' name 'Finalize';
Somit solltest du zumindest diese Unklarheit beseitigen können.