public bool Login() { PasswordHash = null; Cfduid = null; SankakuSessionId = null; ActualUsername = null; try { HttpWebRequest CookieReq = (HttpWebRequest)WebRequest.Create("https://chan.sankakucomplex.com/"); CookieReq.Method = "GET"; CookieReq.Headers.Add("Upgrade-Insecure-Requests: 1"); CookieReq.Headers.Add("Accept-Encoding: gzip, deflate, sdch, br"); CookieReq.Headers.Add("Accept-Language: en-US,en;q=0.8,sl;q=0.6"); CookieReq.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36"; CookieReq.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"; CookieReq.Timeout = 18 * 1000; HttpWebResponse CookieResponse = (HttpWebResponse)CookieReq.GetResponse(); string CookieValueValue = CookieResponse.GetResponseHeader("Set-Cookie"); CookieResponse.Close(); Cfduid = new Regex(@"__cfduid=(.*?);").Match(CookieValueValue).Groups[1].Value; HttpWebRequest Request = (HttpWebRequest)WebRequest.Create("https://chan.sankakucomplex.com/user/authenticate"); Request.Method = "POST"; Request.AllowAutoRedirect = false; Request.Headers.Add("Origin", "https://chan.sankakucomplex.com"); Request.Headers.Add("Cache-Control", "max-age=0"); Request.Headers.Add("Upgrade-Insecure-Requests", "1"); Request.Headers.Add("Accept-Encoding", "gzip, deflate, br"); Request.Headers.Add("Accept-Language", "en-US,en;q=0.8,sl;q=0.6"); Request.Host = "chan.sankakucomplex.com"; Request.Referer = "https://chan.sankakucomplex.com/user/login"; Request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36"; Request.ContentType = "application/x-www-form-urlencoded"; Request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"; Request.Headers.Add("Cookie", $"__cfduid={Cfduid}; auto_page=1; blacklisted_tags=; locale=en"); string Content = $"url=&user%5Bname%5D={Username}&user%5Bpassword%5D={Password}&commit=Login"; byte[] ContentBytes = Encoding.ASCII.GetBytes(Content); Request.ContentLength = ContentBytes.Length; Stream RequestStream = Request.GetRequestStream(); RequestStream.Write(ContentBytes, 0, ContentBytes.Length); RequestStream.Close(); Request.Timeout = 18 * 1000; HttpWebResponse Response = (HttpWebResponse)Request.GetResponse(); string Value = Response.GetResponseHeader("Set-Cookie"); Response.Close(); PasswordHash = new Regex(@"pass_hash=(.*?);").Match(Value).Groups[1].Value; ActualUsername = new Regex(@"login=(.*?);").Match(Value).Groups[1].Value; SankakuSessionId = new Regex(@"_sankakucomplex_session=(.*?);").Match(Value).Groups[1].Value; if (PasswordHash.Length < 2) { LoggedIn = false; return(LoggedIn); } LoggedIn = true; return(LoggedIn); } catch (WebException Exception) { ControlHandler.LogAsync("[SANKAKU] " + Exception.Message); LoggedIn = false; return(LoggedIn); } catch { LoggedIn = false; return(LoggedIn); } }