Hi All Decrypt Full 100% Delphi Help For Convert To Vb --------------------------------------------------- unit MainUnit; interface uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, StdCtrls, Registry; type   TMainForm = class(TForm)     UsersCombo: TComboBox;     Label3: TLabel;     SerialLabel: TStaticText;     EncPassLabel: TStaticText;     DecPassLabel: TStaticText;     procedure FormShow(Sender: TObject);     procedure UsersComboChange(Sender: TObject);   private     { Private declarations }     function GetVolumeSerial: string;     function GivePassword(UserName, EncPass, VolumeSerial: string): string;   public     { Public declarations }   end; var   MainForm: TMainForm; implementation uses StrUtils; {$R *.dfm} procedure TMainForm.FormShow(Sender: TObject); var   Reg: TRegistry; begin   Reg := TRegistry.Create;   if Reg.OpenKey('\Software\Paltalk',False) then   begin     Reg.GetKeyNames(UsersCombo.Items);     if UsersCombo.Items.Count>0 then       UsersCombo.ItemIndex := UsersCombo.Items.IndexOf(Reg.ReadString('cur_user'));     Reg.CloseKey;   end;   Reg.Free;   SerialLabel.Caption := GetVolumeSerial;   UsersComboChange(Self); end; function TMainForm.GetVolumeSerial: string; var   SerialNo: Cardinal;   Tmp: Cardinal; begin   GetVolumeInformation('C:\',nil,0,@SerialNo,Tmp,Tmp,nil,0);   Result := IntToHex(SerialNo,8); end; procedure TMainForm.UsersComboChange(Sender: TObject); var   Reg: TRegistry; begin   Reg := TRegistry.Create;   Reg.OpenKey('\Software\Paltalk\'+UsersCombo.Text,False);   EncPassLabel.Caption := Reg.ReadString('pwd');   Reg.CloseKey;   Reg.Free;   DecPassLabel.Caption := GivePassword(UsersCombo.Text,EncPassLabel.Caption,SerialLabel.Caption); end; function TMainForm.GivePassword(UserName, EncPass,   VolumeSerial: string): string; var   i,j,k: Integer;   MixedUserSerial: string; begin   while (Length(UserName)+Length(VolumeSerial)>0) do   begin     if Length(UserName)>0 then     begin       MixedUserSerial := MixedUserSerial + LeftStr(UserName,1);       Delete(UserName,1,1);     end;     if Length(VolumeSerial)>0 then     begin       MixedUserSerial := MixedUserSerial + LeftStr(VolumeSerial,1);       Delete(VolumeSerial,1,1);     end;   end;   i := Length(MixedUserSerial);   MixedUserSerial := MixedUserSerial + MixedUserSerial + MixedUserSerial;   j := 0;   while Length(EncPass)>0 do   begin     k := StrToInt(LeftStr(EncPass,3));     Delete(EncPass,1,4);     k := k - j - $7A - Byte(MixedUserSerial);     Result := Result + Char(k);     Inc(j);     Inc(i);   end; end; end.