# this gets the reference to the actual data in the file my $buffer = ''; sysseek $infile, 0x15, 0; sysread $infile, $buffer, 0x03; $buffer =~ s/(.)/sprintf("%x",ord($1))/eg; # this will move the CUR to the actual data as specified from the refe +rence and will extract it to file. open(my $newfile, '>', "./file"); my $new; sysseek $infile,hex($buffer), 0; sysread $infile, $new, 0x40000; syswrite $newfile, $new;