Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Project1;
- {$APPTYPE CONSOLE}
- uses
- Windows,
- SysUtils,
- Classes,
- HTTPSend,
- SSL_OpenSSL,
- Clipbrd;
- type
- TRes=record
- page:string;
- redirect:string;
- end;
- TCheetos=record
- image:integer;
- active:boolean;
- end;
- var
- Cookie, page, CheCookie, red, useragent:string;
- i, j, n, CardCount, q:integer;
- NextLevel:boolean;
- card:array [0..40] of TCheetos;
- send:TStringStream;
- HTTP:THTTPSend;
- rez:TStringList;
- function Pars(T_, ForS, _T:string):string;
- var a, b:integer;
- begin
- Result := '';
- if (T_='') or (ForS='') or (_T='') then Exit;
- a:=Pos(T_, ForS);
- if a=0 then Exit else a:=a+Length(T_);
- ForS:=Copy(ForS, a, Length(ForS)-a+1);
- b:=Pos(_T, ForS);
- if b>0 then
- Result:=Copy(ForS, 1, b - 1);
- end;
- function GetLocation(const headers:TStringList):string;
- var i:integer;
- begin
- result:='';
- for I := 0 to headers.Count - 1 do
- if pos('Location: ',headers[i])>0 then
- begin
- Result:=copy(headers[i],11,length(headers[i]));
- break;
- end;
- end;
- function LoginVK: boolean;
- var str, ip_h, sid, login, pass:string; i:integer;
- begin
- write('Copy to clipboard User-Agent and press ENTER');
- readln;
- useragent:=clipboard.AsText;
- write('Enter login: ');
- readln(login);
- write('Enter password: ');
- readln(pass);
- HTTP:=THTTPSend.Create;
- HTTP.UserAgent:=useragent;
- HTTP.Protocol:='1.1';
- HTTP.HTTPMethod('GET', 'https://vk.com/login.php');
- Cookie:=HTTP.Cookies.Text;
- rez:=TStringList.Create;
- rez.LoadFromStream(HTTP.Document);
- str:=rez.Text;
- rez.Free;
- HTTP.Free;
- ip_h:=Pars('name="ip_h" value="', str, '"');
- HTTP:=THTTPSend.Create;
- HTTP.UserAgent:=useragent;
- HTTP.Protocol:='1.1';
- HTTP.Cookies.Text:=Cookie;
- HTTP.MimeType:='application/x-www-form-urlencoded';
- send:=TStringStream.Create('');
- send.WriteString('act=login&_origin=https%3A%2F%2Fvk.com&ip_h='+ip_h+'&email='+login+'&pass='+pass);
- HTTP.Document.LoadFromStream(send);
- send.Free;
- HTTP.Cookies.Text:=Cookie;
- HTTP.HTTPMethod('POST', 'https://login.vk.com/?act=login');
- Cookie:=HTTP.Cookies.Text;
- red:=GetLocation(HTTP.Headers);
- HTTP.Free;
- if pos('hash=', red)<>0 then begin
- HTTP:=THTTPSend.Create;
- HTTP.UserAgent:=useragent;
- HTTP.Protocol:='1.1';
- HTTP.Cookies.Text:=Cookie;
- HTTP.HTTPMethod('GET', red);
- Cookie:=HTTP.Cookies.Text;
- rez:=TStringList.Create;
- rez.LoadFromStream(HTTP.Document);
- str:=rez.Text;
- rez.Free;
- HTTP.Free;
- result:=true;
- end else result:=false;
- end;
- function HTTPGet(url: string; var Cookies:string):TRes;
- begin
- HTTP:=THTTPSend.Create;
- HTTP.Cookies.Text:=Cookies;
- HTTP.AddPortNumberToHost:=false;
- HTTP.UserAgent:=useragent;
- HTTP.Protocol:='1.1';
- HTTP.HTTPMethod('GET', url);
- Cookies:=HTTP.Cookies.Text;
- rez:=TStringList.Create;
- rez.LoadFromStream(HTTP.Document);
- result.page:=rez.Text;
- rez.Free;
- result.redirect:=GetLocation(HTTP.Headers);
- HTTP.Free;
- end;
- begin
- writeln('===============================================================================');
- writeln('=========================== Cheetos.ru Game bot ===============================');
- writeln('====================== Coded by VANS - VANS-SOFT.RU ===========================');
- writeln('===============================================================================');
- useragent:='Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.94 Safari/537.36';
- Cookie:='';
- CheCookie:='';
- NextLevel:=false;
- readln;
- HTTPGet('https://cheetos.ru/', CheCookie);
- //авторизация по логину/паролю без ВК
- HTTP:=THTTPSend.Create;
- HTTP.UserAgent:=useragent;
- HTTP.Protocol:='1.1';
- HTTP.Cookies.Text:=CheCookie;
- HTTP.Headers.Add('X-Requested-With:XMLHttpRequest');
- HTTP.Headers.Add('Referer:https://cheetos.ru/');
- HTTP.MimeType:='application/x-www-form-urlencoded';
- send:=TStringStream.Create('');
- send.WriteString('email=*youmail*&password=*youpassw*&three_weeks=false');
- HTTP.Document.LoadFromStream(send);
- send.Free;
- HTTP.Cookies.Text:=Cookie;
- HTTP.HTTPMethod('POST', 'https://cheetos.ru/api/users/log_in');
- CheCookie:=HTTP.Cookies.Text;
- rez:=TStringList.Create;
- rez.LoadFromStream(HTTP.Document);
- page:=rez.Text;
- rez.Free;
- HTTP.Free;
- if pos('{}', page)<>0 then begin
- writeln('Login Success!');
- page:=HTTPGet('https://cheetos.ru/api/users/current', CheCookie).page;
- writeln('Points: '+Pars('"points_all":"', page, '"'));
- for n:=1 to 3 do begin
- if not NextLevel then begin
- writeln('Create new game...');
- page:=HTTPGet('https://cheetos.ru/api/game/new', CheCookie).page;
- NextLevel:=true;
- end else begin
- writeln('Next game...');
- page:=HTTPGet('https://cheetos.ru/api/game/next_level', CheCookie).page;
- end;
- CardCount:=StrToInt(Pars('"card":', page, ','))-1;
- writeln('Level: '+Pars('"level":', page, ','));
- writeln('Card: '+IntToStr(CardCount+1));
- writeln('Time: '+Pars('"time":', page, '}'));
- page:=HTTPGet('https://cheetos.ru/api/users/code_is_activate', CheCookie).page;
- writeln('Activate: '+Pars('"activate":', page, '}'));
- writeln('Get card, please wait...');
- i:=0;
- q:=0;
- while q < (CardCount+1) do begin
- page:=HTTPGet('https://cheetos.ru/api/game/card_get?number='+IntToStr(i), CheCookie).page;
- card[i].image:=StrToInt(Pars('"image":', page, ','));
- card[i].active:=(Pars('"success":', page, ',')='true');
- writeln('['+IntToStr(i)+'] '+IntToStr(card[i].image)+' = ', card[i].active, ' success: '+Pars('"success":', page, ','));
- if card[i].active then begin
- card[i-1].active:=true;
- inc(q, 2);
- end else begin
- for j:=i-1 downto 0 do begin
- if (card[i].image=card[j].image) then begin //and (i<>j)
- if card[i].active and card[j].active then break;
- Write(IntToStr(i)+'('+IntToStr(card[i].image)+') + '+IntToStr(j)+'('+IntToStr(card[j].image)+') = ');
- if Pars('"success":', page, ',')<>'null' then begin
- page:=HTTPGet('https://cheetos.ru/api/game/card_get?number='+IntToStr(j), CheCookie).page;
- page:=HTTPGet('https://cheetos.ru/api/game/card_get?number='+IntToStr(i), CheCookie).page;
- end else
- page:=HTTPGet('https://cheetos.ru/api/game/card_get?number='+IntToStr(j), CheCookie).page;
- card[i].active:=true;
- card[j].active:=true;
- inc(q, 2);
- writeln(Pars('"success":', page, ','));
- if Pars('"finish":', page, ',')='true' then begin
- writeln('GAME WINNER');
- writeln(Pars('"score":', page, '}'));
- end;
- break;
- end;
- end;
- end;
- inc(i);
- sleep(Random(4000));
- end;
- end;
- end else writeln('VK Auth Error');
- readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement