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='P2lCP1ouWj5zQT4oIT45TUFzSE05KCdvRnBLbUZUdCcpKT5NUnM9KCdFTz45c3pNMj..

Decoded Output download

$_X=base64_decode($_X);$_X=strtr($_X,'SgPO9YZWFKmqyfxcjLJRzuM5vNts1b.{B4nC]i/2Dl0EheA
[d8=Qp>VXo H}6GIw7ka3TrU<','=R9odmplAEPyk8gv[53xrMezqZHi7YhW<DsG{>CcX}1N/afj6]JtuS 
.BUnwVKLQO20ITF4b');$_R=str_replace('__FILE__',"'".$_F."'",$_X);eval($_R);$_R=0;$_X=0;?><?php if (! defined('BASEPATH')) exit('No direct script access allowed');

class L extends External_Controller {
	public function __construct() {
		parent::__construct();
	} // function

	public function _remap() {
		$this->index(
			$this->uri->segment(2),
			$this->uri->segment(3),
			$this->uri->segment(4),
			$this->uri->segment(5));
	} // function

	public function index($id = 0, $key = '', $contact_id = 0, $contact_key = '') {
		$id = (int)hexdec($this->security->xss_clean($id));
		$key = trim(substr(trim($this->security->xss_clean($key)), 0, 16));
		$contact_id = (int)hexdec($this->security->xss_clean($contact_id));
		$contact_key = trim(substr(trim($this->security->xss_clean($contact_key)), 0, 16));

		if ($id == 0 || empty($key)) {
			$this->handle_error(lang('L_external_error_inboundlink_invalid'));
			return;
		} // if

		$link = new Link($id);

		if (empty($link->id) || $link->key != $key) {
			$this->handle_error(lang('L_external_error_inboundlink_invalid'));
			return;
		} // if

		$contact = new Contact($contact_id);

		if (empty($contact->id) || $contact->key != $contact_key) {
			$this->handle_error(lang('L_external_error_inboundlink_invalid'));
			return;
		} // if

		$click = $contact
					->click
					->where_related('link', 'id', $link->id)
					->limit(1)
					->get();

		if (empty($click->id)) {
			$relations = array($link, $contact);
			$click = new Click;
			$click->save($relations);

			$datecode = app_datecode();

			$click_stat = new ClickStat;
			$click_stat
				->select('*')
				->where_related('link', 'id', $link->id)
				->where('datecode', $datecode)
				->limit(1)
				->get();

			if (empty($click_stat->id)) {
				$click_stat = new ClickStat;
				$click_stat->datecode = $datecode;
				$click_stat->count = 1;
				$click_stat->save($link);
			} // if
			else {
				$click_stat->count = $click_stat->count + 1;
				$click_stat->save();
			} // else
		} // if
		else {
			$click->stamp_update = time();
			$click->save();
		} // else

		$action = new App_Action();
		$action->run_link_actions($link, $contact);

		if ($link->post_contact == 1) {
			if ($link->get_contact == 1) {
				$url = $link->url . '?' . http_build_query($contact->as_array());
				app_redirect($url, $contact->as_array());
			} // if
			else {
				app_redirect($link->url, $contact->as_array());
			} // else
		} // if
		else {
			if ($link->get_contact == 1) {
				$url = $link->url . '?' . http_build_query($contact->as_array());
				redirect($url);
			} // if
			else {
				redirect($link->url);
			} // else
		} // else
	} // function
} // class

Did this file decode correctly?

Original Code

<?php $_F=__FILE__;$_X='P2lCP1ouWj5zQT4oIT45TUFzSE05KCdvRnBLbUZUdCcpKT5NUnM9KCdFTz45c3pNMj0+bjJ6c1o9PmUyMk1ubj5lV1dPfU05Jyk7DVYNVjJXZW5uPkk+TVI9TUg5bj5LUj1NekhlV18vT0g9ek9XV016Pl0NVglaUTxXczI+QVFIMj1zT0g+X18yT0huPXpRMj0oKT5dDVYJCVplek1IPTo6X18yT0huPXpRMj0oKTsNVglsPmhoPkFRSDI9c09IDVYNVglaUTxXczI+QVFIMj1zT0g+X3pNWWVaKCk+XQ1WCQkkPS5zbi1pc0g5TVIoDVYJCQkkPS5zbi1pUXpzLWluTXhZTUg9KGspLA1WCQkJJD0uc24taVF6cy1pbk14WU1IPShKKSwNVgkJCSQ9LnNuLWlRenMtaW5NeFlNSD0oVSksDVYJCQkkPS5zbi1pUXpzLWluTXhZTUg9KEwpKTsNVglsPmhoPkFRSDI9c09IDVYNVglaUTxXczI+QVFIMj1zT0g+c0g5TVIoJHM5PlM+YSw+JHlNcT5TPicnLD4kMk9IPWUyPV9zOT5TPmEsPiQyT0g9ZTI9X3lNcT5TPicnKT5dDVYJCSRzOT5TPihzSD0pLk1SOU0yKCQ9LnNuLWluTTJRenM9cS1pUm5uXzJXTWVIKCRzOSkpOw1WCQkkeU1xPlM+PXpzWShuUTxuPXooPXpzWSgkPS5zbi1pbk0yUXpzPXEtaVJubl8yV01lSCgkeU1xKSksPmEsPjBbKSk7DVYJCSQyT0g9ZTI9X3M5PlM+KHNIPSkuTVI5TTIoJD0uc24taW5NMlF6cz1xLWlSbm5fMldNZUgoJDJPSD1lMj1fczkpKTsNVgkJJDJPSD1lMj1feU1xPlM+PXpzWShuUTxuPXooPXpzWSgkPS5zbi1pbk0yUXpzPXEtaVJubl8yV01lSCgkMk9IPWUyPV95TXEpKSw+YSw+MFspKTsNVg1WCQlzQT4oJHM5PlNTPmE+fHw+TVlaPXEoJHlNcSkpPl0NVgkJCSQ9LnNuLWkuZUg5V01fTXp6T3ooV2VIeCgnSV9NUj1NekhlV19NenpPel9zSDxPUUg5V3NIeV9zSGNlV3M5JykpOw1WCQkJek09UXpIOw1WCQlsPmhoPnNBDVYNVgkJJFdzSHk+Uz5ITX0+SXNIeSgkczkpOw1WDVYJCXNBPihNWVo9cSgkV3NIeS1pczkpPnx8PiRXc0h5LWl5TXE+IVM+JHlNcSk+XQ1WCQkJJD0uc24taS5lSDlXTV9NenpPeihXZUh4KCdJX01SPU16SGVXX016ek96X3NIPE9RSDlXc0h5X3NIY2VXczknKSk7DVYJCQl6TT1Rekg7DVYJCWw+aGg+c0ENVg1WCQkkMk9IPWUyPT5TPkhNfT4vT0g9ZTI9KCQyT0g9ZTI9X3M5KTsNVg1WCQlzQT4oTVlaPXEoJDJPSD1lMj0taXM5KT58fD4kMk9IPWUyPS1peU1xPiFTPiQyT0g9ZTI9X3lNcSk+XQ1WCQkJJD0uc24taS5lSDlXTV9NenpPeihXZUh4KCdJX01SPU16SGVXX016ek96X3NIPE9RSDlXc0h5X3NIY2VXczknKSk7DVYJCQl6TT1Rekg7DVYJCWw+aGg+c0ENVg1WCQkkMldzMnk+Uz4kMk9IPWUyPQ1WCQkJCQktaTJXczJ5DVYJCQkJCS1pfS5Nek1fek1XZT1NOSgnV3NIeScsPidzOScsPiRXc0h5LWlzOSkNVgkJCQkJLWlXc1lzPSgwKQ1WCQkJCQktaXhNPSgpOw1WDVYJCXNBPihNWVo9cSgkMldzMnktaXM5KSk+XQ1WCQkJJHpNV2U9c09Ibj5TPmV6emVxKCRXc0h5LD4kMk9IPWUyPSk7DVYJCQkkMldzMnk+Uz5ITX0+L1dzMnk7DVYJCQkkMldzMnktaW5lY00oJHpNV2U9c09Ibik7DVYNVgkJCSQ5ZT1NMk85TT5TPmVaWl85ZT1NMk85TSgpOw1WDVYJCQkkMldzMnlfbj1lPT5TPkhNfT4vV3MyeXA9ZT07DVYJCQkkMldzMnlfbj1lPQ1WCQkJCS1pbk1XTTI9KCcqJykNVgkJCQktaX0uTXpNX3pNV2U9TTkoJ1dzSHknLD4nczknLD4kV3NIeS1pczkpDVYJCQkJLWl9Lk16TSgnOWU9TTJPOU0nLD4kOWU9TTJPOU0pDVYJCQkJLWlXc1lzPSgwKQ1WCQkJCS1peE09KCk7DVYNVgkJCXNBPihNWVo9cSgkMldzMnlfbj1lPS1pczkpKT5dDVYJCQkJJDJXczJ5X249ZT0+Uz5ITX0+L1dzMnlwPWU9Ow1WCQkJCSQyV3MyeV9uPWU9LWk5ZT1NMk85TT5TPiQ5ZT1NMk85TTsNVgkJCQkkMldzMnlfbj1lPS1pMk9RSD0+Uz4wOw1WCQkJCSQyV3MyeV9uPWU9LWluZWNNKCRXc0h5KTsNVgkJCWw+aGg+c0ENVgkJCU1Xbk0+XQ1WCQkJCSQyV3MyeV9uPWU9LWkyT1FIPT5TPiQyV3MyeV9uPWU9LWkyT1FIPT4rPjA7DVYJCQkJJDJXczJ5X249ZT0taW5lY00oKTsNVgkJCWw+aGg+TVduTQ1WCQlsPmhoPnNBDVYJCU1Xbk0+XQ1WCQkJJDJXczJ5LWluPWVZWl9RWjllPU0+Uz49c1lNKCk7DVYJCQkkMldzMnktaW5lY00oKTsNVgkJbD5oaD5NV25NDVYNVgkJJGUyPXNPSD5TPkhNfT5GWlpfRjI9c09IKCk7DVYJCSRlMj1zT0gtaXpRSF9Xc0h5X2UyPXNPSG4oJFdzSHksPiQyT0g9ZTI9KTsNVg1WCQlzQT4oJFdzSHktaVpPbj1fMk9IPWUyPT5TUz4wKT5dDVYJCQlzQT4oJFdzSHktaXhNPV8yT0g9ZTI9PlNTPjApPl0NVgkJCQkkUXpXPlM+JFdzSHktaVF6Vz5YPic/Jz5YPi49PVpfPFFzVzlfdlFNenEoJDJPSD1lMj0taWVuX2V6emVxKCkpOw1WCQkJCWVaWl96TTlzek0yPSgkUXpXLD4kMk9IPWUyPS1pZW5fZXp6ZXEoKSk7DVYJCQlsPmhoPnNBDVYJCQlNV25NPl0NVgkJCQllWlpfek05c3pNMj0oJFdzSHktaVF6Vyw+JDJPSD1lMj0taWVuX2V6emVxKCkpOw1WCQkJbD5oaD5NV25NDVYJCWw+aGg+c0ENVgkJTVduTT5dDVYJCQlzQT4oJFdzSHktaXhNPV8yT0g9ZTI9PlNTPjApPl0NVgkJCQkkUXpXPlM+JFdzSHktaVF6Vz5YPic/Jz5YPi49PVpfPFFzVzlfdlFNenEoJDJPSD1lMj0taWVuX2V6emVxKCkpOw1WCQkJCXpNOXN6TTI9KCRRelcpOw1WCQkJbD5oaD5zQQ1WCQkJTVduTT5dDVYJCQkJek05c3pNMj0oJFdzSHktaVF6Vyk7DVYJCQlsPmhoPk1Xbk0NVgkJbD5oaD5NV25NDVYJbD5oaD5BUUgyPXNPSA1WbD5oaD4yV2Vubg=';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdTZ1BPOVlaV0ZLbXF5ZnhjakxKUnp1TTV2TnRzMWIue0I0bkNdaS8yRGwwRWhlQQpbZDg9UXA+VlhvIEh9NkdJdzdrYTNUclU8JywnPVI5b2RtcGxBRVB5azhndls1M3hyTWV6cVpIaTdZaFc8RHNHez5DY1h9MU4vYWZqNl1KdHVTIAouQlVud1ZLTFFPMjBJVEY0YicpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw='));?>

Function Calls

strtr 1
strrev 1
defined 1
str_replace 1
base64_decode 2

Variables

$_D base64_decode
$_F index.php
$_R ?><?php if (! defined('BASEPATH')) exit('No direct script ac..
$_X ?><?php if (! defined('BASEPATH')) exit('No direct script ac..

Stats

MD5 fe31cafdd9850949c104695c886a51d4
Eval Count 2
Decode Time 97 ms