My reply back:
Ok, here we go...
This is my second try at the huffman decompresser. I have changed the implementation a bit, replacing the arrays with strings. I've also applied some of the suggestions jynx made, inlineing the literals, using 'compliant' variable names ($; was a fine twist..).
#!/usr/bin/perl
do{$_=ord substr"1234567 89:her;k<t=alcjusnop",$:*2+
(((ord(substr"\x00\x50\xA5\xd2\xc5\xbb\x96\xef\x06".
"\xbc\x8e\xe0",$;/8,1)&2**(7-$;++%8))==0)?0:1),1;$:=
($_&240)==48?$_&15:-1+print chr}until$;==91