Skip to content

Instantly share code, notes, and snippets.

@m3kk-kn1ght
Created December 16, 2018 01:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save m3kk-kn1ght/cb2634c1d186236645f7a4ff5d04b305 to your computer and use it in GitHub Desktop.
Save m3kk-kn1ght/cb2634c1d186236645f7a4ff5d04b305 to your computer and use it in GitHub Desktop.
target = [0x8, 0x8B, 0x0DE, 0x0BF, 0x9D, 0x0A9, 0x4, 0x12, 0x8B, 0x12, 0x12, 0x9A, 0x62, 0x0A9, 0x51, 0x47, 0x0EA, 0x0EA, 0x30, 0x8B, 0x26, 0x2, 0x4B, 0x77, 0x32, 0x74, 0x41, 0x7D, 0x4A, 0x7C, 0x4F, 0x0B, 0x4F, 0x7B, 0x5, 0x6C, 0x1B, 0x7D, 0x0B, 0x63, 0x14, 0x70]
part1 = target[len(target)// 2:][::-1]
part1_copy = part1[:]
part1[0] -= 3
for i in range(1, len(part1)):
part1[i] ^= part1_copy[i - 1]
part1[i] -= 3
part2 = target[0: 21][::-1]
part2_copy = part2[:]
for i in range(35, 130):
if i ^ ((i << 4) & 0xff) == part2_copy[0]:
part2[0] = i - 3
for i in range(1, len(part2)):
for j in range(35, 130):
tmp = ((part2_copy[i - 1] >> 4) ^ j) & 0xff
result = tmp ^ ((tmp << 4) & 0xff)
if result == part2_copy[i]:
part2[i] = j - 3
break
print ''.join(chr(x) for x in part1) + ''.join(chr(x) for x in part2)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment