$hogehoge =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;
じゃだめ?