It has many levels of base64 encoding and eval() statements. You can eventually decode it by spending a lot of time decoding pieces, looking at them, replacing eval()'s with echo()'s to see what they are doing, etc., etc.
Personally, I have better things to do with my free time. 😉