Schaut aus, als ob in madExcept.HandleCreateThreadHook was nicht wieder freigegeben wird. Da im Callstack keine Zeilennummer steht (nimm evtl mal debugsymbole für die
unit rein und lass sie neu kompilieren - einfach die madExcept.pas explizit dafür ins Projekt aufnehmen, sonst nutzt er die
dcu von der madCollection Installation).
Ich würd ja raten, dass es der Speicher vom VirtualAlloc ist (SizeOf(tti^) sollten 12 Byte sein), allerdings fügt PatchPtr weiter unten das in eine Liste ein, die im FreePatches, was im finalization aufgerufen wird, wieder freigegeben wird durch VirtualFree. Eventuell dort mal durch debuggen, obs da irgendwo hakt.
Edit: Nachdem ich Primož Gabrijelčič gefragt habe, kann ich sagen, dass es nicht das VirtualAlloc ist, das wird von FastMM nicht gehooked und somit werden mögliche Leaks daraus nicht erkannt. Scheint also was anderes zu sein. Zusätzliche Debuginfo im madExcept könnte aber den Callstack etwas verbessern, um die Ursache möglicherweise zu finden.