in reply to pack with count in the data

It's really weird that you are using pack to work on hex digits instead of packed data.
my $data = pack( 'H*', '00010003206162' ); my ( $kategory, $contents ) = unpack( 'n n/A', $data ); printf( "%04X\n", $kategory ); printf( "%s\n", $contents );