anchor.diff:      Exit;
     end;
     Result := nil;
  +end;
  +
  +function GetSizeOfFunction(Address: Pointer): Integer;
  +var
  +  mbi: TMemoryBasicInformation;
  +  NextAddress: Pointer;
  +begin
  +  { SizeOfFunction = NextAdjacentAddress - StartAddress of the function. }
  +  if (VirtualQuery(Address, mbi, SizeOf(TMemoryBasicInformation)) > 0) and (mbi.Protect and PAGE_EXECUTE_MASK <> $00) then
  +  begin
  +    NextAddress := GetNextSymbolAddress(Address);
  +    if Assigned(NextAddress) then
  +    begin
  +      Result := NativeUInt(NextAddress) - NativeUInt(Address);
  +      Exit;
  +    end;
  +  end;
  +  Result := 0;
   end;
   
   {$REGION 'Misc'}
  
positive.code: /// </returns>
  function GetNextSymbolAddress(Address: Pointer): Pointer;
  
  {$ENDREGION 'PublicFunctions'}
  // ------------------------------------------------------------------------------------
  {$REGION 'MiscFunctions'}
  
negative.code: {$ENDREGION 'InternalDebugUtils'}
  {$REGION 'GLOBAL'}
  const
    PAGE_EXECUTE_MASK = PAGE_EXECUTE or PAGE_EXECUTE_READ or PAGE_EXECUTE_READWRITE or PAGE_EXECUTE_WRITECOPY;
    { Regular expressions patterns used by TCustomTxtMapParser }
  
    HintSegmentRegExPattern = '^\s*Start\s+Length\s+Name\s+Class\s*$';
  