Es gibt afaik moderne Debugger*, die das beherrschen, der in Delphi eingebaute gehört aber nicht dazu (zumindest habe ich noch nichts davon gehört, so etwas würde doch beworben).
Man kann in Delphi ja problemlos den Stack nach oben wandern (Doppelklick in der Stackanzeige) und sieht dann natürlich alle verfügbaren lokalen Variablen an den verschiedenen Stationen. Meistens findet man so zumindest eine Stelle, an der man mit einem Breakpoint einklinken kann, zudem werden die Breakpoints auch im Stack markiert und sind dort umschaltbar.
Rückwärts den Ablauf abspielen geht aber nicht, das würde wohl auch etwas schwierig werden.
Zur Fehlersuche hilft es auch insbesondere an oft durchlaufenen Stellen einfach den Haltepunkt auf "nicht anhalten" zu stellen und stattdessen nur Daten zu loggen (z.B. Variablenwerte auswerten oder einen Stacktrace bei jedem Durchlauf anzeigen). Danach kann man dann Haltepunktbedingungen oder die Aktivierung von Haltepunktgruppen darauf abstimmen und so relativ schnell zur Problemstelle kurz direkt vor dem Auftreten des Problems kommen.