The issue appears to be that this call:
my $tmpMessage = $parser->parse_data($body);
Is returning decoded strings for some emails but not for others.
Some of the emails require the output of this call:
to be decoded manually and others do not.
I don't understand why sometimes this call
Returns a human readable decoded string on some emails with base64 encoding but not on all emails with base64 encoding. This is a headache for me because if I change the code to just output the string it breaks on emails that need the string manually decoded.
All I am doing is calling "parse_data" and then "bodyhandle->as_string". I'm not sure where the decoding process happens. The original data is definitely base64 encoded which I can see by looking at the raw email data.