Without seeing the script, it's hard to tell, but I'd guess you failed to specify the encoding layer when opening the file:
open my $FH, '<:encoding(UTF-8)', 'filename.txt' or die $!;
# ~~~~~~~~~~~~~~~~
Unpacking how? There are various templates you can use.
Update:
Yes, that's it:
#! /usr/bin/perl
use warnings;
use strict;
use feature qw{ say };
use Encode;
my $s = encode('UTF-8', "\N{MIDDLE DOT}");
say join ' ', unpack "C*", $s;
($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord
}map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,
|