anchor.diff:        popad
         jmp ExitFunction
       @IsNotDFADead:
  +    test ebx,sfDFAFullMatch
  +    jz @IsNotFullMatch
  +     mov eax,dword ptr UntilExcludingPosition
  +     mov dword ptr MatchEnd,eax
  +     mov dword ptr result,DFAMatch
  +     popad
  +     jmp ExitFunction
  +    @IsNotFullMatch:
       test ebx,sfDFAMatchWins
       jz @IsNotMatchWin
        lea eax,[esi+2]
  
positive.code:      @HaveNextState:
  
       mov ebx,dword ptr [edi+TFLREDFAState.Flags]
       test ebx,sfDFAMatchWins or sfDFADead or sfDFAStart
       jnz @CheckFlags
  
      @BackToLoop:
  
negative.code:     exit;
     end;
     if (State^.Flags and sfDFAFullMatch)<>0 then begin
      MatchEnd:=UntilExcludingPosition-1;
      result:=DFAMatch;
      exit;
     end;
  