Day18 fixed

This commit is contained in:
Roman Hergenreder 2019-12-29 21:25:52 +01:00
parent fc96f770ee
commit 371a01efaa
4 changed files with 7 additions and 34 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -1,36 +1,9 @@
unk_100007F50 = [0x03, 0x20, 0x63, 0x46, 0x61, 0xB6, 0x3C, 0xAF, 0xAA, 0x76, 0xC2, 0x7E, 0xEA, 0x00, 0xB5, 0x98] from Crypto.Cipher import Salsa20
a4 = -5678246756302764783
# input = "096CD446EBC8E04D2FDE299BE44F322863F7A37C18763554EEE4C99C3FAD15" KEY = bytearray.fromhex("0320634661B63CAFAA76C27EEA00B59BFB2F7097214FD04CB257AC2904EFEE46")
# print(len(input), len(unk_100007F50)) NONCE = bytearray.fromhex("B132D0A8E78F4511")[::-1]
ENCRYPTED = bytearray.fromhex("096CD446EBC8E04D2FDE299BE44F322863F7A37C18763554EEE4C99C3FAD15")
def dance_words(): cipher = Salsa20.new(key=KEY, nonce=NONCE)
pass plaintext = cipher.decrypt(ENCRYPTED)
print(plaintext.decode("UTF-8"))
def dance_block(buf, unk, const, num):
pass
def dance(input):
if len(input) > 0:
v4 = -567824675630276478
v5 = unk_100007F50
v6 = len(input)
v7 = input
v8 = 0
v9 = [0] * 64
while True:
if v8 == 0:
dance_block(v9, v5, v4, 0)
v7[v8] = ord(v7[v8]) ^ v9[0]
v8 = v8 + 1
if v6 == v8:
break
return v7
input = ["0"] * 32
output = dance(input)
print(output)