>>> map (ord, base64.decodestring("AzRdHXdb5Xu5PFK1FQhWlRjdDSM="))
[3, 52, 93, 29, 119, 91, 229, 123, 185, 60, 82, 181, 21, 8, 86, 149, 24, 221, 13, 35]
>>> password = map (ord, base64.decodestring("AzRdHXdb5Xu5PFK1FQhWlRjdDSM="))
>>>
>>>     j = password[0]
>>>     k = password[1]
>>>
>>>     i1 = (password[3] ^ j) << 8 & 0xFF00 | (password[2] ^ k) & 0xFF
>>>     i1 = i1 & 0xFFFF
>>>     i1 = i1 - 7777
>>>
>>> unmangled_passwd = password[4:4+i1]
>>>
>>> for n in xrange(i1):
..   if (n % 2 != 0):
..     i = k
..   else:
..     i = j
..   print unmangled_passwd[n],  i,  unmangled_passwd[n] ^ i
..   unmangled_passwd[n] = unmangled_passwd[n] ^ i
..   m = i & 0x1
..   i = i >> 1
..
..   if m != 0:
..     i = i | 0x80
..   else:
..     i = i & 0x7F
..
..   if n % 2 != 0:
..     k = i
..   else:
..     j = i
..
119 3 116
91 52 111
229 129 100
123 26 97
185 192 121
60 13 49
82 96 50
181 134 51
>>> unmangled_passwd
[116, 111, 100, 97, 121, 49, 50, 51]
>>> map (chr, unmangled_passwd)
['t', 'o', 'd', 'a', 'y', '1', '2', '3']
>>>