Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as Python by m ( 14 years ago )
Key:xf4xb2xd3x8cxf5x75x1bx9bxf6xf1x5bx76xa7x95x57xaaxd8x48x74x88x9cx2x2xf3xf8xd1x2axe1x15xcexffx9c
IV:x29xaex80x79xa9x6axd8xa2xebxc8x48x5xfex65x6exeb
import idaapi, idautils, idc
def MutatedTrippleXor(key, keymask1, keymask2, iv, ivmask1, ivmask2):
i = 0
j = 0
ctr1 = 0
ctr = 0
for i in xrange(0x12+1):
for j in xrange(32):
ctr1 = 31 - j
key[j] ^= keymask2[ctr1]
keymask1[j] ^= key[ctr1]
keymask2[j] ^= keymask1[ctr1]
for j in xrange(16):
ctr2 = 15 - j
ivmask1[j] ^= iv[ctr2]
iv[j] ^= ivmask2[ctr2]
ivmask2[j] ^= ivmask1[ctr2]
return (key, iv)
def makebytes(address, leng):
return [ord(x) for x in idaapi.get_many_bytes(address, leng)]
def dump():
keymask1 = makebytes(0x11118, 32) # r4
keymask2 = makebytes(0x11178, 32) # r5
key = makebytes(0x11148, 32) # r6
ivmask1 = makebytes(0x11108, 16) #r10
ivmask2 = makebytes(0x11168, 16) #r7
iv = makebytes(0x11138, 16) #r8
keyf, ivf = MutatedTrippleXor(key, keymask1, keymask2, iv, ivmask1, ivmask2)
print "Key:%s" % ("".join(["\x%x" % x for x in keyf]))
print "IV:%s" % ("".join(["\x%x" % x for x in iv]))
dump()
Revise this Paste
Children: 48534