If text has been encoded as quoted-printable (most body text is encoded as this), it must be decoded for it to be displayed correctly (without '=', '=20' and other strange text chunks all through the string).
To decode, you can use the following built-in php function...
quoted_printable_decode($string)
Hopefully I've just saved a few people from having to do a preg_replace on there email bodies.