Nie wystarczy, nie ma tak łatwo. Zdekodowanie tego nie należy do prostych ani szybkich rzeczy.
Najpierw trzeba rozkodować sam dekoder - czyli kod php, po jego rozkodowaniu dopiero trzeba go odpowiednio zmodyfikować, wykonać i dla wyniku powtórzyć proces - bo całość jest chyba wielokrotnie przemielona (ma przynajmniej 2 poziomy).
Nie mam czasu na zabawę więc jedynie podpowiem jak zacząć
<?php $V000='8c25ebef217082cf1c947897bcbe7907';$V249='strrev';$V527='base64_decode';$V969='str_rot13';$V519=$V249('erapmoc_noisrev');$V786='phpversi'.$V249('no');$V276=$V249('emitorcim');$V839='chr';$V126=$V527('b2Jfcw==').$V527('dGFydA==');$V199=$V527('YmFzZQ==').$V969('64_qrpbqr');$V686='str_rot13';$V636='ob_get_contents';$V477='ob_end_clean';if($V519('4.3.0',$V786(),'>=')){echo 'This script requires PHP version 4.3.0 or higher ('.$V249(' si noisrev tnerruc').$V786().')';return;};$GLOBALS['V002']=$V276();$GLOBALS['V001']='';for($V451=0;$V451<=255;$V451++)$GLOBALS['V001'].=$V839($V451);eval($V527($V969('pzI0qKWhVPEJZGV2XPx7')));?>
-dla ułatwienia można sobie rozbić na linijki dając entery za średnikami.
Pierwszą zmienną z kluczem pomijamy, bierzemy $V249=‘strrev’; - dziwnie znajoma funkcja
-wiedząc, że zmienna $V249 zawiera nazwę funkcji, podmieniamy sobie wszystkie wystąpienia $V249 na strrev i tak np.
$V519=$V249(‘erapmoc_noisrev’); da nam $V519=strrev(‘erapmoc_noisrev’);
…a wiedząc, że ta funkcja odwraca ciąg można to sobie z palca rozwiązać: $V519=‘version_compare’; itd.
Analogicznie wiedząc, że $V527=‘base64_decode’; - wiadomo, że $V126=$V527(‘b2Jfcw==’).$V527(‘dGFydA==’); to nic innego jak:
$V126=base64_decode(‘b2Jfcw==’).base64_decode(‘dGFydA==’); - tutaj można sobie np. w notepad++ zdekodować ciągi base64 i dostaniemy
$V126=base64_decode(‘ob_s’).base64_decode(‘tart’);
-już widać co tam jest, wystarczy wywalić funkcje i połączyć stringi: $V126=‘ob_start’;
I tak dalej, i tak dalej…
Suma sumarum, pierwszy eval jedynie inicjuje bufor ( wywołuje return $V126(); czyli rozkodowane wyżej ob_start )
Właściwa funkcja dekodująca znajduje się pod tą sieczką, trzeba sobie tamten skrypcik też zdekodować jw. i dopiero tam będzie trzeba jeden z wewnętrznych evali ( dopiero po rozkodowaniu widać, że pierwszy eval wykonuje kod zawierający jeszcze inny eval ) zamienić np. na echo by wypluło “rozszyfrowaną” sieczkę.
…ale o ile dobrze kojarzę, to wypluje coś podobnego tj. znowu zagmatwany w podobny sposób php i kolejną porcję sieczki