Bei deinem ursprünglichem Quelltext ist klar das irgend etwas abrauchen kann weil du mit FHook arbeitest obwohl es nicht initialisiert ist (ist nur in der Instanz initialisiert die für die du installHook aufrufst).
Sähkunde mal. Ich denke globale Variablen sind in Delphi
immer ausgenullt?!