...
my $binary = pack 'F*', (3.141592) x 8001; # this will dump a 64K+ binary chunk
my $string = '...blah...' . $binary . '...blah...';
my ($fiop, $length, $data);
if( $string =~ m{}gx ) {
($fiop, $length) = ($1, $2); # extract tag properties as usual
$data = substr $string, pos($string), $length # extract data by direct string copy
}
print "$fiop, $length\n";
print join ',', unpack("F*", $data);
(my $notags = $string) =~ s{}{};
print "\n$notags\n";
...