Si no ando desencaminado y como para lo único que utilizas StatementLines es para obtener información igual es mas eficiente declararla como constante, habría que comprobarlo.
Código Delphi
[-]function GetStatement(const StatementLines: TStrings): string;
var
i: Integer;
begin
Result := '';
for i := 0 to StatementLines.Count - 1 do
Result := Result + Trim(StatementLines[i]) + ' ';
SetLength(Result, Length(Result)-1);
end;