Как расшифровать вредоносный код base64_decode((str_replace(?
Не хватает данных. Алгоритм использует для дешифровки ключ, приходящий в $_POST['d42'] или $_COOKIE['d42'].
if($a10=gzinflate($a10)){
Здесь распаковывается сжатая строка и если результат удачный идет далее 
if(isset(_POST['d42'])) setcookie('d42',_POST['d42']);
Здесь проверяется наличие пост параметра возможно используется гдето в дальнейшем. возможно авторизация или чтото еще 

$a10="".create_function((string)null,$a10);
Переменная а10 становиться функцией. (string)null обозначает что у функции нет аргументов 
$a10) код самой функции кторый был отправлен 
unset($k36);
удаляется переменная        
$a10();
Вызывается полезная нагрузка только что созданной функции