Switch to edit mode.
Name(s): unBase641: {string} = args
2: nums = {}
3: for x in ($string_utils:char_list(string))
4: nums = {@nums, is_member(x, this.base64_table) - 1}
5: $command_utils:suspend_if_needed()
6: endfor
7: out = ""
8: while (nums)
9: bignum = nums[1] * 262144 + nums[2] * 4096 + nums[3] * 64 + nums[4]
10: group = {bignum / 65536}
11: if (nums[3] != 64)
12: bignum = bignum % 65536
13: group = {@group, bignum / 256}
14: if (nums[4] != 64)
15: bignum = bignum % 256
16: group = {@group, bignum}
17: endif
18: endif
19: out = out + encode_binary(@group)
20: nums[0..4] = {}
21: $command_utils:suspend_if_needed()
22: endwhile
23: return out
24: "Last modified by Dax (#789) on Sun Dec 16 20:15:03 2001 MST."
25: "This verb previously owned by manta (#7165), and chowned to $slacker upon dewizarding (Sat Aug 17 14:50:04 2002 MDT)."
26: "Last modified by Dax (#789) on Sat Aug 17 14:50:04 2002 MDT."