Advertisement
Guest User

Untitled

a guest
Oct 14th, 2016
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.93 KB | None | 0 0
  1.         public bool OneClickMobileAuth()
  2.         {
  3.             string csrf;
  4.             bool sux = _inst.request.Cookies.TryGetValue("csrftoken", out csrf);
  5.             string token = linkToAuth.Substring("token=", "&");
  6.             _uid = linkToAuth.Substring("uid=");
  7.  
  8.             string postdata = "{\"source\":\"email\",\"_csrftoken\":\"" + csrf + "\",\"uid\":\"" + _uid + "\",\"guid\":\"" + guid + "\",\"device_id\":\"android-" + androidID + "\",\"token\":\"" + token + "\"}";
  9.             bool result = false;
  10.             int counter = 0;
  11.             do
  12.             {
  13.                 counter++;
  14.                 result = _inst.MakeRequest("accounts/one_click_login/", new List<string>() { "\"status\":\"ok\"", "\"status\": \"ok\"", "\"status\" :\"ok\"" }, postdata);
  15.                 _logger.Log($"Ответ сервера при логине: {_inst.lastResponcePage}");
  16.                 if (result == true)
  17.                 {
  18.                     instagramUserName = _inst.lastResponcePage.Substring("\"username\"", "\",").Trim(',', '\"', ' ', ':');
  19.                     break;
  20.                 }
  21.                 if (_inst.lastResponcePage.Contains("This link is for one time use. Please request a new one"))
  22.                 {
  23.                     // Рип по количеству использований линка
  24.                     //Собственно надо выходить и падать на ребрут позже.
  25.                     throw new MagicException("Exit Auth limit reached");
  26.                 }
  27.                 else if (_inst.lastResponcePage.Contains("This link is one time use and only valid for 24 hours. Please request a new one."))
  28.                 {
  29.                     //Рип по времени линка Может нашли старый
  30.                     _logger.Log($"Видимо линк старый");
  31.                     linkToAuth = "";
  32.                     linkToResetPassword = "";
  33.                     break;
  34.                 }
  35.                 else if (_inst.lastResponcePage.Contains("checkpoint"))
  36.                 {
  37.                     string url = "https" + _inst.lastResponcePage.Substring("https", "\"");
  38.                     PassCheckpoint(url, csrf);
  39.                     continue;
  40.                 }
  41.                 else
  42.                 {
  43.                     _logger.Log($"Нипонятнооооо: {_inst.lastResponcePage}");
  44.                 }
  45.             }
  46.             while (counter < 5);
  47.             if (counter >= 5)
  48.             {
  49.                 _logger.Log("Блять, опять вечный чекпоинт, ну ебаный в рот");
  50.                 throw new MagicException("Вечный чекпоинт при логине");
  51.             }
  52.             return result;
  53.         }
  54.  
  55.         public bool VerifyEmail(string loginMail)
  56.         {
  57.             this.guid = Guid.NewGuid().ToString();
  58.             this.androidID = genAndroidDeviceID();
  59.             return _inst.MakeRequest("users/lookup/", new List<string>() { "can_email_reset\":true", "can_email_reset\": true", "can_email_reset\" : true" },
  60.                 "{\"q\":\"" + loginMail + "\",\"guid\":\"" + guid + "\",\"device_id\":\"android-" + androidID + "\"}");
  61.         }
  62.         public bool ResetPassword(string loginMail)
  63.         {
  64.             string csrf;
  65.             bool sux = _inst.request.Cookies.TryGetValue("csrftoken", out csrf);
  66.             if (!sux)
  67.             {
  68.                 _logger.Log("Нет CSRF куки, инста ёбнулась.", 3);
  69.                 csrf = "";
  70.                 throw new MagicException("CSRF");
  71.             }
  72.             string temp = "{\"username_or_email\":\"" + loginMail + "\",\"phone_number\":\"\",\"_csrftoken\":\"" + csrf + "\",\"device_id\":\"android-" + androidID + "\",\"guid\":\"" + guid + "\"}";
  73.             return _inst.MakeRequest("accounts/sign_in_help/", new List<string>() { "\"status\":\"ok\"", "\"status\": \"ok\"", "\"status\" :\"ok\"" }, temp);
  74.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement