function CryptStr(const S:String; sType: DWord):String;
var
i: Integer;
FKey: Integer;
begin
result:='';
case sType of
0: SetPass;
begin
Randomize;
FKey := Random($FF);
for i:=1 to Length(s) do
Result := Result+Chr( Ord(s) xor i xor FKey);
Result := Result + Char(FKey);
end;
1: GetPass
Begin
FKey := Ord(S[Length(s)]);
for i:=1 to Length(s) - 1 do
Result := Result+Chr( Ord(s) xor i xor FKey);