1. реверс строки - есть функция ReverseString
2. Дальше добиваем случайными символами до длинны, кратной 5.
3. Дальше вставляем пробелы.
Код:
function SmartReverse(AText : String) : String;
var
Buf : String;
begin
// 1
Buf := ReverseString(AText);
// 2
While (Length(Buf) mod 5) <> 0 Do
Buf := Buf + Chr(Random(33) + Ord('а')); // а - русская
// 3
Result := '';
While Buf <> '' Do
Begin
Result := Result + Copy(Buf,1,5);
Buf := Copy(Buf,6,Length(Buf)-5);
If Buf <> '' Then Result := Result + ' ';
End;
end;
ЗЫ. Код не проверял.