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 $_F=__FILE__;$_X='Pz48P3BocA0KY2wxc3MgTTE0bCB7DQogICAgcHI0djF0NSAkc210cFM1cnY1ciA9IC..

Decoded Output download

?><?php
class Mail {
    private $smtpServer = 'mail.metin2regal.ro';
    private $port = '25';
    private $timeout = '45';
    private $username = '[email protected]';
    private $password = '09vudit2QPzg';
    private $newline = "
";
  ////////////////////////////////////////////// NU MODIFICATI ///////////////////
    private $charset = 'windows-1251';
    private $contentTransferEncoding = false;

    // Do not change anything below
    private $smtpConnect = false;
    private $to = false;
    private $subject = false;
    private $message = false;
    private $headers = false;
    private $logArray = array(); // Array response message for debug
    private $Error = '';

    public function __construct($to, $subject, $message) {
        $this->to = &$to;
        $this->subject = &$subject;
        $this->message = &$message;
        // Connect to server
        if(!$this->Connect2Server()) {
        	// Display error message
            echo $this->Error.$this->newline.'<!-- '.$this->newline;
            print_r($this->logArray);
            echo $this->newline.'-->'.$this->newline;
            return false;
        }
        return true;
    }

    private function Connect2Server() {
        // Connect to server
        $this->smtpConnect = fsockopen($this->smtpServer,$this->port,$errno,$error,$this->timeout);
        $this->logArray['CONNECT_RESPONSE'] = $this->readResponse();

        if (!is_resource($this->smtpConnect)) {
            return false;
        }
        $this->logArray['connection'] = "Connection accepted: $smtpResponse";
        // Hi, server!
        $this->sendCommand("EHLO $this->localdomain");
        $this->logArray['EHLO'] = $this->readResponse();
        // Let's know each other
        $this->sendCommand('AUTH LOGIN');
        $this->logArray['AUTH_REQUEST'] = $this->readResponse();
        // My name...
        $this->sendCommand(base64_encode($this->username));
        $this->logArray['REQUEST_USER'] = $this->readResponse();
        // My password..
        $this->sendCommand(base64_encode($this->password));
        $this->logArray['REQUEST_PASSWD'] = $this->readResponse();
        // If error in response auth...
        if (substr($this->logArray['REQUEST_PASSWD'],0,3)!='235') {
            $this->Error .= 'Authorization error! '.$this->logArray['REQUEST_PASSWD'].$this->newline;
            return false;
        }
        // "From" mail...
        $this->sendCommand("MAIL FROM: $this->username");
        $this->logArray['MAIL_FROM_RESPONSE'] = $this->readResponse();
        if (substr($this->logArray['MAIL_FROM_RESPONSE'],0,3)!='250') {
            $this->Error .= 'Mistake in sender\'s address! '.$this->logArray['MAIL_FROM_RESPONSE'].$this->newline;
            return false;
        }
        // "To" address
        $this->sendCommand("RCPT TO: $this->to");
        $this->logArray['RCPT_TO_RESPONCE'] = $this->readResponse();
        if (substr($this->logArray['RCPT_TO_RESPONCE'],0,3)!='250') {
            $this->Error .= 'Mistake in reciepent address! '.$this->logArray['RCPT_TO_RESPONCE'].$this->newline;
        }
        // Send data to server
        $this->sendCommand('DATA');
        $this->logArray['DATA_RESPONSE'] = $this->readResponse();
        // Send mail message
        if (!$this->sendMail()) return false;
        // Good bye server! =)
        $this->sendCommand('QUIT');
        $this->logArray['QUIT_RESPONSE'] = $this->readResponse();
        // Close smtp connect 
        fclose($this->smtpConnect);
        return true;
    }
    // Function send mail
    private function sendMail() {
        $this->sendHeaders();
        $this->sendCommand($this->message);
        $this->sendCommand('.');
        $this->logArray['SEND_DATA_RESPONSE'] = $this->readResponse();
        if(substr($this->logArray['SEND_DATA_RESPONSE'],0,3)!='250') {
            $this->Error .= 'Mistake in sending data! '.$this->logArray['SEND_DATA_RESPONSE'].$this->newline;
            return false;
        }
        return true;
    }
    // Function read response
    private function readResponse() {
        $data="";
        while($str = fgets($this->smtpConnect,4096))
        {
            $data .= $str;
            if(substr($str,3,1) == " ") { break; }
        }
        return $data;
    }
    // function send command to server
    private function sendCommand($string) {
        fputs($this->smtpConnect,$string.$this->newline);
        return ;
    }
    // function send headers
    private function sendHeaders() {
        $this->sendCommand("Date: ".date("D, j M Y G:i:s")." +0700");
        $this->sendCommand("From: <$this->username>");
        $this->sendCommand("Reply-To: <$this->username>");
        $this->sendCommand("To: <$this->to>");
        $this->sendCommand("Subject: $this->subject");
        $this->sendCommand("MIME-Version: 1.0");
        $this->sendCommand("Content-Type: text/plain; charset=$this->charset");
        if ($this->contentTransferEncoding) $this->sendCommand("Content-Transfer-Encoding: $this->contentTransferEncoding");
        $this->sendCommand($this->newline);
        return ;
    }

    public function __destruct() {
        if (is_resource($this->smtpConnect)) fclose($this->smtpConnect);
    }
}
?> 

Did this file decode correctly?

Original Code

<?php $_F=__FILE__;$_X='Pz48P3BocA0KY2wxc3MgTTE0bCB7DQogICAgcHI0djF0NSAkc210cFM1cnY1ciA9ICdtMTRsLm01dDRuYXI1ZzFsLnIyJzsNCiAgICBwcjR2MXQ1ICRwMnJ0ID0gJ2FpJzsNCiAgICBwcjR2MXQ1ICR0NG01MjN0ID0gJ3VpJzsNCiAgICBwcjR2MXQ1ICQzczVybjFtNSA9ICduMi1yNXBseUBtNXQ0bmFyNWcxbC5yMic7DQogICAgcHI0djF0NSAkcDFzc3cycmQgPSAnMDl2M2Q0dGFRUHpnJzsNCiAgICBwcjR2MXQ1ICRuNXdsNG41ID0gIlxuIjsNCiAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLyBOVSBNT0RJRklDQVRJIC8vLy8vLy8vLy8vLy8vLy8vLy8NCiAgICBwcjR2MXQ1ICRjaDFyczV0ID0gJ3c0bmQyd3MtNmFpNic7DQogICAgcHI0djF0NSAkYzJudDVudFRyMW5zZjVyRW5jMmQ0bmcgPSBmMWxzNTsNCg0KICAgIC8vIEQyIG4ydCBjaDFuZzUgMW55dGg0bmcgYjVsMncNCiAgICBwcjR2MXQ1ICRzbXRwQzJubjVjdCA9IGYxbHM1Ow0KICAgIHByNHYxdDUgJHQyID0gZjFsczU7DQogICAgcHI0djF0NSAkczNiajVjdCA9IGYxbHM1Ow0KICAgIHByNHYxdDUgJG01c3MxZzUgPSBmMWxzNTsNCiAgICBwcjR2MXQ1ICRoNTFkNXJzID0gZjFsczU7DQogICAgcHI0djF0NSAkbDJnQXJyMXkgPSAxcnIxeSgpOyAvLyBBcnIxeSByNXNwMm5zNSBtNXNzMWc1IGYyciBkNWIzZw0KICAgIHByNHYxdDUgJEVycjJyID0gJyc7DQoNCiAgICBwM2JsNGMgZjNuY3Q0Mm4gX19jMm5zdHIzY3QoJHQyLCAkczNiajVjdCwgJG01c3MxZzUpIHsNCiAgICAgICAgJHRoNHMtPnQyID0gJiR0MjsNCiAgICAgICAgJHRoNHMtPnMzYmo1Y3QgPSAmJHMzYmo1Y3Q7DQogICAgICAgICR0aDRzLT5tNXNzMWc1ID0gJiRtNXNzMWc1Ow0KICAgICAgICAvLyBDMm5uNWN0IHQyIHM1cnY1cg0KICAgICAgICA0ZighJHRoNHMtPkMybm41Y3RhUzVydjVyKCkpIHsNCiAgICAgICAgCS8vIEQ0c3BsMXkgNXJyMnIgbTVzczFnNQ0KICAgICAgICAgICAgNWNoMiAkdGg0cy0+RXJyMnIuJHRoNHMtPm41d2w0bjUuJzwhLS0gJy4kdGg0cy0+bjV3bDRuNTsNCiAgICAgICAgICAgIHByNG50X3IoJHRoNHMtPmwyZ0FycjF5KTsNCiAgICAgICAgICAgIDVjaDIgJHRoNHMtPm41d2w0bjUuJy0tPicuJHRoNHMtPm41d2w0bjU7DQogICAgICAgICAgICByNXQzcm4gZjFsczU7DQogICAgICAgIH0NCiAgICAgICAgcjV0M3JuIHRyMzU7DQogICAgfQ0KDQogICAgcHI0djF0NSBmM25jdDQybiBDMm5uNWN0YVM1cnY1cigpIHsNCiAgICAgICAgLy8gQzJubjVjdCB0MiBzNXJ2NXINCiAgICAgICAgJHRoNHMtPnNtdHBDMm5uNWN0ID0gZnMyY2sycDVuKCR0aDRzLT5zbXRwUzVydjVyLCR0aDRzLT5wMnJ0LCQ1cnJuMiwkNXJyMnIsJHRoNHMtPnQ0bTUyM3QpOw0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ0NPTk5FQ1RfUkVTUE9OU0UnXSA9ICR0aDRzLT5yNTFkUjVzcDJuczUoKTsNCg0KICAgICAgICA0ZiAoITRzX3I1czIzcmM1KCR0aDRzLT5zbXRwQzJubjVjdCkpIHsNCiAgICAgICAgICAgIHI1dDNybiBmMWxzNTsNCiAgICAgICAgfQ0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ2Mybm41Y3Q0Mm4nXSA9ICJDMm5uNWN0NDJuIDFjYzVwdDVkOiAkc210cFI1c3AybnM1IjsNCiAgICAgICAgLy8gSDQsIHM1cnY1ciENCiAgICAgICAgJHRoNHMtPnM1bmRDMm1tMW5kKCJFSExPICR0aDRzLT5sMmMxbGQybTE0biIpOw0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ0VITE8nXSA9ICR0aDRzLT5yNTFkUjVzcDJuczUoKTsNCiAgICAgICAgLy8gTDV0J3Mga24ydyA1MWNoIDJ0aDVyDQogICAgICAgICR0aDRzLT5zNW5kQzJtbTFuZCgnQVVUSCBMT0dJTicpOw0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ0FVVEhfUkVRVUVTVCddID0gJHRoNHMtPnI1MWRSNXNwMm5zNSgpOw0KICAgICAgICAvLyBNeSBuMW01Li4uDQogICAgICAgICR0aDRzLT5zNW5kQzJtbTFuZChiMXM1ZXVfNW5jMmQ1KCR0aDRzLT4zczVybjFtNSkpOw0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ1JFUVVFU1RfVVNFUiddID0gJHRoNHMtPnI1MWRSNXNwMm5zNSgpOw0KICAgICAgICAvLyBNeSBwMXNzdzJyZC4uDQogICAgICAgICR0aDRzLT5zNW5kQzJtbTFuZChiMXM1ZXVfNW5jMmQ1KCR0aDRzLT5wMXNzdzJyZCkpOw0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ1JFUVVFU1RfUEFTU1dEJ10gPSAkdGg0cy0+cjUxZFI1c3AybnM1KCk7DQogICAgICAgIC8vIElmIDVycjJyIDRuIHI1c3AybnM1IDEzdGguLi4NCiAgICAgICAgNGYgKHMzYnN0cigkdGg0cy0+bDJnQXJyMXlbJ1JFUVVFU1RfUEFTU1dEJ10sMCxvKSE9J2FvaScpIHsNCiAgICAgICAgICAgICR0aDRzLT5FcnIyciAuPSAnQTN0aDJyNHoxdDQybiA1cnIyciEgJy4kdGg0cy0+bDJnQXJyMXlbJ1JFUVVFU1RfUEFTU1dEJ10uJHRoNHMtPm41d2w0bjU7DQogICAgICAgICAgICByNXQzcm4gZjFsczU7DQogICAgICAgIH0NCiAgICAgICAgLy8gIkZyMm0iIG0xNGwuLi4NCiAgICAgICAgJHRoNHMtPnM1bmRDMm1tMW5kKCJNQUlMIEZST006ICR0aDRzLT4zczVybjFtNSIpOw0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ01BSUxfRlJPTV9SRVNQT05TRSddID0gJHRoNHMtPnI1MWRSNXNwMm5zNSgpOw0KICAgICAgICA0ZiAoczNic3RyKCR0aDRzLT5sMmdBcnIxeVsnTUFJTF9GUk9NX1JFU1BPTlNFJ10sMCxvKSE9J2FpMCcpIHsNCiAgICAgICAgICAgICR0aDRzLT5FcnIyciAuPSAnTTRzdDFrNSA0biBzNW5kNXJcJ3MgMWRkcjVzcyEgJy4kdGg0cy0+bDJnQXJyMXlbJ01BSUxfRlJPTV9SRVNQT05TRSddLiR0aDRzLT5uNXdsNG41Ow0KICAgICAgICAgICAgcjV0M3JuIGYxbHM1Ow0KICAgICAgICB9DQogICAgICAgIC8vICJUMiIgMWRkcjVzcw0KICAgICAgICAkdGg0cy0+czVuZEMybW0xbmQoIlJDUFQgVE86ICR0aDRzLT50MiIpOw0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ1JDUFRfVE9fUkVTUE9OQ0UnXSA9ICR0aDRzLT5yNTFkUjVzcDJuczUoKTsNCiAgICAgICAgNGYgKHMzYnN0cigkdGg0cy0+bDJnQXJyMXlbJ1JDUFRfVE9fUkVTUE9OQ0UnXSwwLG8pIT0nYWkwJykgew0KICAgICAgICAgICAgJHRoNHMtPkVycjJyIC49ICdNNHN0MWs1IDRuIHI1YzQ1cDVudCAxZGRyNXNzISAnLiR0aDRzLT5sMmdBcnIxeVsnUkNQVF9UT19SRVNQT05DRSddLiR0aDRzLT5uNXdsNG41Ow0KICAgICAgICB9DQogICAgICAgIC8vIFM1bmQgZDF0MSB0MiBzNXJ2NXINCiAgICAgICAgJHRoNHMtPnM1bmRDMm1tMW5kKCdEQVRBJyk7DQogICAgICAgICR0aDRzLT5sMmdBcnIxeVsnREFUQV9SRVNQT05TRSddID0gJHRoNHMtPnI1MWRSNXNwMm5zNSgpOw0KICAgICAgICAvLyBTNW5kIG0xNGwgbTVzczFnNQ0KICAgICAgICA0ZiAoISR0aDRzLT5zNW5kTTE0bCgpKSByNXQzcm4gZjFsczU7DQogICAgICAgIC8vIEcyMmQgYnk1IHM1cnY1ciEgPSkNCiAgICAgICAgJHRoNHMtPnM1bmRDMm1tMW5kKCdRVUlUJyk7DQogICAgICAgICR0aDRzLT5sMmdBcnIxeVsnUVVJVF9SRVNQT05TRSddID0gJHRoNHMtPnI1MWRSNXNwMm5zNSgpOw0KICAgICAgICAvLyBDbDJzNSBzbXRwIGMybm41Y3QgDQogICAgICAgIGZjbDJzNSgkdGg0cy0+c210cEMybm41Y3QpOw0KICAgICAgICByNXQzcm4gdHIzNTsNCiAgICB9DQogICAgLy8gRjNuY3Q0Mm4gczVuZCBtMTRsDQogICAgcHI0djF0NSBmM25jdDQybiBzNW5kTTE0bCgpIHsNCiAgICAgICAgJHRoNHMtPnM1bmRINTFkNXJzKCk7DQogICAgICAgICR0aDRzLT5zNW5kQzJtbTFuZCgkdGg0cy0+bTVzczFnNSk7DQogICAgICAgICR0aDRzLT5zNW5kQzJtbTFuZCgnLicpOw0KICAgICAgICAkdGg0cy0+bDJnQXJyMXlbJ1NFTkRfREFUQV9SRVNQT05TRSddID0gJHRoNHMtPnI1MWRSNXNwMm5zNSgpOw0KICAgICAgICA0ZihzM2JzdHIoJHRoNHMtPmwyZ0FycjF5WydTRU5EX0RBVEFfUkVTUE9OU0UnXSwwLG8pIT0nYWkwJykgew0KICAgICAgICAgICAgJHRoNHMtPkVycjJyIC49ICdNNHN0MWs1IDRuIHM1bmQ0bmcgZDF0MSEgJy4kdGg0cy0+bDJnQXJyMXlbJ1NFTkRfREFUQV9SRVNQT05TRSddLiR0aDRzLT5uNXdsNG41Ow0KICAgICAgICAgICAgcjV0M3JuIGYxbHM1Ow0KICAgICAgICB9DQogICAgICAgIHI1dDNybiB0cjM1Ow0KICAgIH0NCiAgICAvLyBGM25jdDQybiByNTFkIHI1c3AybnM1DQogICAgcHI0djF0NSBmM25jdDQybiByNTFkUjVzcDJuczUoKSB7DQogICAgICAgICRkMXQxPSIiOw0KICAgICAgICB3aDRsNSgkc3RyID0gZmc1dHMoJHRoNHMtPnNtdHBDMm5uNWN0LHUwOWUpKQ0KICAgICAgICB7DQogICAgICAgICAgICAkZDF0MSAuPSAkc3RyOw0KICAgICAgICAgICAgNGYoczNic3RyKCRzdHIsbyw2KSA9PSAiICIpIHsgYnI1MWs7IH0NCiAgICAgICAgfQ0KICAgICAgICByNXQzcm4gJGQxdDE7DQogICAgfQ0KICAgIC8vIGYzbmN0NDJuIHM1bmQgYzJtbTFuZCB0MiBzNXJ2NXINCiAgICBwcjR2MXQ1IGYzbmN0NDJuIHM1bmRDMm1tMW5kKCRzdHI0bmcpIHsNCiAgICAgICAgZnAzdHMoJHRoNHMtPnNtdHBDMm5uNWN0LCRzdHI0bmcuJHRoNHMtPm41d2w0bjUpOw0KICAgICAgICByNXQzcm4gOw0KICAgIH0NCiAgICAvLyBmM25jdDQybiBzNW5kIGg1MWQ1cnMNCiAgICBwcjR2MXQ1IGYzbmN0NDJuIHM1bmRINTFkNXJzKCkgew0KICAgICAgICAkdGg0cy0+czVuZEMybW0xbmQoIkQxdDU6ICIuZDF0NSgiRCwgaiBNIFkgRzo0OnMiKS4iICswNzAwIik7DQogICAgICAgICR0aDRzLT5zNW5kQzJtbTFuZCgiRnIybTogPCR0aDRzLT4zczVybjFtNT4iKTsNCiAgICAgICAgJHRoNHMtPnM1bmRDMm1tMW5kKCJSNXBseS1UMjogPCR0aDRzLT4zczVybjFtNT4iKTsNCiAgICAgICAgJHRoNHMtPnM1bmRDMm1tMW5kKCJUMjogPCR0aDRzLT50Mj4iKTsNCiAgICAgICAgJHRoNHMtPnM1bmRDMm1tMW5kKCJTM2JqNWN0OiAkdGg0cy0+czNiajVjdCIpOw0KICAgICAgICAkdGg0cy0+czVuZEMybW0xbmQoIk1JTUUtVjVyczQybjogNi4wIik7DQogICAgICAgICR0aDRzLT5zNW5kQzJtbTFuZCgiQzJudDVudC1UeXA1OiB0NXh0L3BsMTRuOyBjaDFyczV0PSR0aDRzLT5jaDFyczV0Iik7DQogICAgICAgIDRmICgkdGg0cy0+YzJudDVudFRyMW5zZjVyRW5jMmQ0bmcpICR0aDRzLT5zNW5kQzJtbTFuZCgiQzJudDVudC1UcjFuc2Y1ci1FbmMyZDRuZzogJHRoNHMtPmMybnQ1bnRUcjFuc2Y1ckVuYzJkNG5nIik7DQogICAgICAgICR0aDRzLT5zNW5kQzJtbTFuZCgkdGg0cy0+bjV3bDRuNSk7DQogICAgICAgIHI1dDNybiA7DQogICAgfQ0KDQogICAgcDNibDRjIGYzbmN0NDJuIF9fZDVzdHIzY3QoKSB7DQogICAgICAgIDRmICg0c19yNXMyM3JjNSgkdGg0cy0+c210cEMybm41Y3QpKSBmY2wyczUoJHRoNHMtPnNtdHBDMm5uNWN0KTsNCiAgICB9DQp9DQo/PiA=';eval(base64_decode('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCcxMjM0NTZhb3VpZScsJ2FvdWllMTIzNDU2Jyk7JF9SPWVyZWdfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='));?>

Function Calls

strtr 1
ereg_replace 1
base64_decode 2

Variables

$_F index.php
$_R 0
$_X 0

Stats

MD5 8c8aeb982771ac03d0e2663bf8908eda
Eval Count 2
Decode Time 53 ms