<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ivan Villareal &#187; Decrypting SourceCop php files &#8211; Ivan Villareal</title>
	<atom:link href="http://ivanvillareal.com/tag/sourcecop/feed/" rel="self" type="application/rss+xml" />
	<link>http://ivanvillareal.com</link>
	<description>IT stuff and more...</description>
	<lastBuildDate>Tue, 01 Nov 2011 23:00:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Decrypting SourceCop php files</title>
		<link>http://ivanvillareal.com/development/php-development/decrypting-sourcecop-php-files/</link>
		<comments>http://ivanvillareal.com/development/php-development/decrypting-sourcecop-php-files/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 19:41:46 +0000</pubDate>
		<dc:creator>Ivan Villareal</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[sourcecop]]></category>

		<guid isPermaLink="false">http://ivanvillareal.com/?p=176</guid>
		<description><![CDATA[Every once in a while, I receive code that is encrypted using one of many php encoder software out there, so when I face this situation and if the project [...]]]></description>
			<content:encoded><![CDATA[<p>Every once in a while, I receive code that is encrypted using one of many php encoder software out there, so when I face this situation and if the project is worth it, I start playing around with the encrypted files to see how the encoding algorithm works, so far I’ve been able to successful decrypt files encoded with Zend, and ioncube, I don’t remember the versions of the encoders but I remember that the latter one took me some time, but I did it.</p>
<p>I must say that decoding files also becomes a personal challenge, it is like a hobby when I have the time to play with it.</p>
<p> Yesterday I received a couple of files encoded with an unknown encoder for me, it didn’t require any php modification or extension install, so I tough that it would be easy to break it, because at some point the code must be evaluated, so after I opened the zip file, I noticed a folder called “scopbin“, that contained only 1 php file named “911006.php“, the two encoded files were  including this file so I assumed that this is were the decryption logic had to be.</p>
<p>I was exhausted by a long working day, and when I got this files and saw that they were encrypted I placed them in my laptop for later analysis. This analysis was done while  I was waiting for the local news, I didn’t research the encoding, or did  anything that give me some pointers, I just started to playing around with the code to see how far  could I get.</p>
<p>My objective this time was getting this files decrypted, and not analysing the steps of the algorithm, so with this in mind, this is what I did:</p>
<p>This was the original “911006.php” file:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&nbsp;
<span style="color: #339933;">&lt;</span> ?php <span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'include_path'</span><span style="color: #339933;">,</span><span style="color: #990000;">dirname</span><span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">__FILE__</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>function A4540acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> b5434f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> c43dsd0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> Xdsf0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> y0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span><span style="color: #339933;">=</span><span style="color: #0000ff;">''</span><span style="color: #339933;">;</span><span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span><span style="color: #000088;">$x16754c94f2e48aae0d6f34280507be58</span><span style="color: #339933;">=</span><span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #339933;">=</span><span style="color: #990000;">hexdec</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&amp;H'</span><span style="color: #339933;">.</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>for<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span><span style="color: #339933;">&lt;</span>strlen<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span><span style="color: #339933;">+=</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span><span style="color: #339933;">=</span><span style="color: #990000;">hexdec</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">trim</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span><span style="color: #339933;">=</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span><span style="color: #339933;">&lt;</span><span style="color: #000088;">$x16754c94f2e48aae0d6f34280507be58</span><span style="color: #009900;">&#41;</span>?<span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #339933;">=</span><span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span> ^ <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>if<span style="color: #009900;">&#40;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #339933;">&lt;=</span><span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #009900;">&#41;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">255</span><span style="color: #339933;">+</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #339933;">-</span><span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #339933;">;</span>else <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #339933;">=</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #339933;">-</span><span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #339933;">;</span><span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span><span style="color: #339933;">=</span><span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #339933;">=</span><span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">return</span> <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> f5434f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> j43dsd0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> hdsf0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> tr5434f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> f0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #b1b100;">return</span> <span style="color: #990000;">implode</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">''</span><span style="color: #339933;">,</span><span style="color: #990000;">file</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">function</span> g0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">return</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'echo'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">==</span><span style="color: #009900; font-weight: bold;">false</span>?<span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'print'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">==</span><span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span>?<span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'sprint'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">==</span><span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span>?<span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'sprintf'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">==</span><span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span>?<span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">:</span><span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> hyr3dsd0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> uygf0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> drfg34f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> jhkgvdsd0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #000000; font-weight: bold;">function</span> yrdhhdacdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>return <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span> <span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'include_path'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'.'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>I’ve used a code formatter to make the code  more readable:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">ivan<span style="color: #000000; font-weight: bold;">@</span>mini:<span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>www<span style="color: #000000; font-weight: bold;">/</span>copdecrypt<span style="color: #000000; font-weight: bold;">/</span>scopbin$ phpCB <span style="color: #660033;">--space-after-if</span>  \
<span style="color: #660033;">--space-after-switch</span>                                           \
<span style="color: #660033;">--space-after-while</span>                                            \
<span style="color: #660033;">--space-before-srt-angle-bracket</span>                               \
<span style="color: #660033;">--space-after-end-angle-bracket</span>                                \
<span style="color: #660033;">--glue-amperscore</span>                                              \
<span style="color: #660033;">--change-shell-comment-to-double-slashes-comment</span>               \
<span style="color: #660033;">--force-large-php-code-tag</span>                                     \
<span style="color: #660033;">--force-true-false-null-contant-lowercase</span>                      \
<span style="color: #660033;">--align-equal-statements</span>                                       \
<span style="color: #660033;">--comment-rendering-style</span> PEAR                                 \
<span style="color: #660033;">--equal-align-position</span> <span style="color: #000000;">50</span>                                      \
<span style="color: #660033;">--padding-char-count</span> <span style="color: #000000;">4</span>                                         \
<span style="color: #000000;">911006</span>.php</pre></div></div>

<p>And this was the result:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #339933;">&lt;</span> ?php
<span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'include_path'</span><span style="color: #339933;">,</span> <span style="color: #990000;">dirname</span><span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">__FILE__</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">function</span> A4540acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> b5434f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> c43dsd0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> Xdsf0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> y0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$x16754c94f2e48aae0d6f34280507be58</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span> <span style="color: #339933;">=</span> <span style="color: #990000;">hexdec</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&amp;H'</span> <span style="color: #339933;">.</span> <span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2</span><span style="color: #339933;">;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span> <span style="color: #339933;">&lt;</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span> <span style="color: #339933;">+=</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span> <span style="color: #339933;">=</span> <span style="color: #990000;">hexdec</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">trim</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">&lt;</span> <span style="color: #000088;">$x16754c94f2e48aae0d6f34280507be58</span><span style="color: #009900;">&#41;</span>?<span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span> ^ <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">&lt;=</span> <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #009900;">&#41;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">255</span> <span style="color: #339933;">+</span> <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #339933;">;</span>
        <span style="color: #b1b100;">else</span> <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span> <span style="color: #339933;">.</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> 
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> f5434f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> j43dsd0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> hdsf0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> tr5434f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> f0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #990000;">implode</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #990000;">file</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> g0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'echo'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">false</span>?<span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'print'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span>?<span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'sprint'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span>?<span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'sprintf'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span>?<span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">:</span><span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> hyr3dsd0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> uygf0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> drfg34f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> jhkgvdsd0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #000000; font-weight: bold;">function</span> yrdhhdacdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">file_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">unlink</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x456e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$Xew6e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span> 
<span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'include_path'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'.'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>After a quick review of this file, I saw that it had several functions that had same logic, return an unknow variable or delete the file that this unknown variable had, appart from all this “useless” functions I quickly found what appeared to be the decryption function this was the function named <strong>y0666f0acdeed38d4cd9084ade1739498 </strong>with this information I headed to check one of the encrypted files, and this is how it looked:</p>
</pre>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&nbsp;
<span style="color: #339933;">&lt;</span> ?php <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'findsysfolder'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #000000; font-weight: bold;">function</span> findsysfolder<span style="color: #009900;">&#40;</span><span style="color: #000088;">$fld</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><span style="color: #000088;">$fld1</span><span style="color: #339933;">=</span><span style="color: #990000;">dirname</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$fld</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$fld</span><span style="color: #339933;">=</span><span style="color: #000088;">$fld1</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'/scopbin'</span><span style="color: #339933;">;</span>clearstatcache<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>if<span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">is_dir</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$fld</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #b1b100;">return</span> findsysfolder<span style="color: #009900;">&#40;</span><span style="color: #000088;">$fld1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>else <span style="color: #b1b100;">return</span> <span style="color: #000088;">$fld</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#125;</span><span style="color: #b1b100;">require_once</span><span style="color: #009900;">&#40;</span>findsysfolder<span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">__FILE__</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'/911006.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$REXISTHECAT4FBI</span><span style="color: #339933;">=</span><span style="color: #0000ff;">'FE50E574D754E76AC679F242F450F768FB5DCB77F34DE341 660C280D176E374DE7FB3B090A782B6B68DBC97BEAD93B681C452F25BE26'</span><span style="color: #339933;">;</span>g0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span>f0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">__FILE__</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$REXISTHEDOG4FBI</span><span style="color: #339933;">=</span><span style="color: #0000ff;">'9CEF6BE117B329ADFC4560538EBF16BB6DAD1748FE354E8EDA7AABFA376EB6938496F43560E4123D85D272E342E363FD51F3181763A3F623 660B6E2369243EE5781CD76A133E272E37DACA198968397F150425B4326A126CD64F051F35287DE7BD3 5354276B880BDEF525247533610 64282D07BA63861F81DB715C115BC1BD57FC5D9C8 225D2 A F177EDC7EA026A7E74D37AC28A125D1B8F73B63C6D1C3A1E137639BEECEDACFDBBD9F8D948CE93D6FCDCDD8CCA98B36AA21A08B8BD87FD8 15143C2C2D37593B82857516FC9ABF9237BDEC9DBB9F92F7BDEB8EE3B6AEA153C9DF3 A2CAE2CD218B1E566C0D274D6 F32DC2A E20 512 062A2F72C 96FB9ED3B6FC9ABF927A34985CAB5D3 65D89B315B3E61076D8 E4488B2127FCEF82C78DDBBED3A6FBB7FCEEACEE04453412363B6E246F05086C7 52E C408CC263E078A53461E0 331B71EB81DC475DB6CAC9531914393D4 22AC9C3D7CE7194438AD638 03D6FCDCDD8CCA98F99211B1177D5C7DEC6A3F427 5 510 461C7D1C51AB492F850FA56FE445EC0154885BDACDC 819BD76A72A419A4D859CFE5A5268CDABFD2A7FAB8DEF227BA3869183E12277A386E03763B6E241F75282CDBFCA187ECE74D7 D1D4881D3C7432177D4 E3F83DA54417EAA8FE93C68BDE94C2E7CA5FD5B4C5E3C9993A98CEA3D69BCE84F2D989C9EEECFDDBFFF15 164C2D471D3 228D3 51CBA75D4 A3C85C1 4618EC5 E6BE91FCD F4D87BE F 56BFB5BFE2A3EA923BDDDBB9D26BE13CD 41F6E584D593C1A C18 D19D29D958C94F12577D5D5C0D4B19781958094F21EB6EF20CC77D87CD0CDC57FA13D8484F61076D47ED5 366F521A6FA2FEFBAF22772A680E23168B0958290F23366B297F12470A5F1543664EF6DA42DAD5E5EB718C569EA2C5F8AE81BBF16BE489E3EE13D7FBD98FE297DA8FC5B396BB2EA4E594B2969D3C7689230A1F4441763B1E83114 31173B3E6331670A6F22672D4B6E43C64C1D6C475FA5AFB2BDF36A83F9F55F8 62A C69BEEC4F4F5A4E2B D1B F1A E68CAD86F44 B1C E6CACF92E B6DDCDDD26437 3'</span><span style="color: #339933;">;</span><span style="color: #000088;">$REXISTHECAT4FBI</span><span style="color: #339933;">=</span><span style="color: #0000ff;">'94CD76CD371C5A7BC70C186E779C293B9B49BACA5A781A6'</span><span style="color: #339933;">;</span> <span style="color: #990000;">eval</span><span style="color: #009900;">&#40;</span>y0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'4EF6454FB298E72B 5'</span><span style="color: #339933;">,</span><span style="color: #000088;">$REXISTHEDOG4FBI</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Again I used the code beautifier  to make this file more readable:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #339933;">&lt;</span> ?php <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'findsysfolder'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">function</span> findsysfolder<span style="color: #009900;">&#40;</span><span style="color: #000088;">$fld</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$fld1</span> <span style="color: #339933;">=</span> <span style="color: #990000;">dirname</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$fld</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$fld</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$fld1</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/scopbin'</span><span style="color: #339933;">;</span>
        <span style="color: #990000;">clearstatcache</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">is_dir</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$fld</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #b1b100;">return</span> findsysfolder<span style="color: #009900;">&#40;</span><span style="color: #000088;">$fld1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #b1b100;">else</span> <span style="color: #b1b100;">return</span> <span style="color: #000088;">$fld</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> 
<span style="color: #009900;">&#125;</span> 
<span style="color: #b1b100;">require_once</span><span style="color: #009900;">&#40;</span>findsysfolder<span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">__FILE__</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/911006.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$REXISTHECAT4FBI</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'FE50E574D754E76AC679F242F450F768FB5DCB77F34DE341 660C280D176E374DE7FB3B090A782B6B68DBC97BEAD93B681C452F25BE26'</span><span style="color: #339933;">;</span>
g0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span>f0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">__FILE__</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$REXISTHEDOG4FBI</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'9CEF6BE117B329ADFC4560538EBF16BB6DAD1748FE354E8EDA7AABFA376EB6938496F43560E4123D85D272E342E363FD51F3181763A3F623 660B6E2369243EE5781CD76A133E272E37DACA198968397F150425B4326A126CD64F051F35287DE7BD3 5354276B880BDEF525247533610 64282D07BA63861F81DB715C115BC1BD57FC5D9C8 225D2 A F177EDC7EA026A7E74D37AC28A125D1B8F73B63C6D1C3A1E137639BEECEDACFDBBD9F8D948CE93D6FCDCDD8CCA98B36AA21A08B8BD87FD8 15143C2C2D37593B82857516FC9ABF9237BDEC9DBB9F92F7BDEB8EE3B6AEA153C9DF3 A2CAE2CD218B1E566C0D274D6 F32DC2A E20 512 062A2F72C 96FB9ED3B6FC9ABF927A34985CAB5D3 65D89B315B3E61076D8 E4488B2127FCEF82C78DDBBED3A6FBB7FCEEACEE04453412363B6E246F05086C7 52E C408CC263E078A53461E0 331B71EB81DC475DB6CAC9531914393D4 22AC9C3D7CE7194438AD638 03D6FCDCDD8CCA98F99211B1177D5C7DEC6A3F427 5 510 461C7D1C51AB492F850FA56FE445EC0154885BDACDC 819BD76A72A419A4D859CFE5A5268CDABFD2A7FAB8DEF227BA3869183E12277A386E03763B6E241F75282CDBFCA187ECE74D7 D1D4881D3C7432177D4 E3F83DA54417EAA8FE93C68BDE94C2E7CA5FD5B4C5E3C9993A98CEA3D69BCE84F2D989C9EEECFDDBFFF15 164C2D471D3 228D3 51CBA75D4 A3C85C1 4618EC5 E6BE91FCD F4D87BE F 56BFB5BFE2A3EA923BDDDBB9D26BE13CD 41F6E584D593C1A C18 D19D29D958C94F12577D5D5C0D4B19781958094F21EB6EF20CC77D87CD0CDC57FA13D8484F61076D47ED5 366F521A6FA2FEFBAF22772A680E23168B0958290F23366B297F12470A5F1543664EF6DA42DAD5E5EB718C569EA2C5F8AE81BBF16BE489E3EE13D7FBD98FE297DA8FC5B396BB2EA4E594B2969D3C7689230A1F4441763B1E83114 31173B3E6331670A6F22672D4B6E43C64C1D6C475FA5AFB2BDF36A83F9F55F8 62A C69BEEC4F4F5A4E2B D1B F1A E68CAD86F44 B1C E6CACF92E B6DDCDDD26437 3'</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$REXISTHECAT4FBI</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'94CD76CD371C5A7BC70C186E779C293B9B49BACA5A781A6'</span><span style="color: #339933;">;</span>
<span style="color: #990000;">eval</span><span style="color: #009900;">&#40;</span>y0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'4EF6454FB298E72B 5'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$REXISTHEDOG4FBI</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>So what we have here is more obfuscated code, but a simple to understand, we have 2 variables and 3 functions, the variable that has the encrypted code should be the larger one so I'm assuming that is the "$REXISTHEDOG4FBI" variable, the other one apparently isn't used, so what I did at this point was to print the results of the evaluated function which corresponds to the function where the decrypt logic is (deofuscated):</p>
</pre>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$key</span><span style="color: #339933;">,</span> <span style="color: #000088;">$program</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000088;">$result</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$position</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$keyLength</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$key</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$decValue</span> <span style="color: #339933;">=</span> <span style="color: #990000;">hexdec</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&amp;H'</span> <span style="color: #339933;">.</span> <span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$program</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$i</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2</span><span style="color: #339933;">;</span><span style="color: #000088;">$i</span> <span style="color: #339933;">&lt;</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$program</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$i</span> <span style="color: #339933;">+=</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$decProgram</span> <span style="color: #339933;">=</span> <span style="color: #990000;">hexdec</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">trim</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$program</span><span style="color: #339933;">,</span> <span style="color: #000088;">$i</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$position</span>   <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$position</span> <span style="color: #339933;">&lt;</span> <span style="color: #000088;">$keyLength</span><span style="color: #009900;">&#41;</span> ? <span style="color: #000088;">$position</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span> <span style="color: #339933;">:</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$ascii</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$decProgram</span>^ <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$key</span><span style="color: #339933;">,</span> <span style="color: #000088;">$position</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$ascii</span> <span style="color: #339933;">&lt;=</span> <span style="color: #000088;">$decValue</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$ascii</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">255</span> <span style="color: #339933;">+</span> <span style="color: #000088;">$ascii</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$decValue</span><span style="color: #339933;">;</span>
        <span style="color: #b1b100;">else</span> <span style="color: #000088;">$ascii</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$ascii</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$decValue</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #000088;">$result</span>   <span style="color: #339933;">=</span> <span style="color: #000088;">$result</span> <span style="color: #339933;">.</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$ascii</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$decValue</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$decProgram</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> 
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$result</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>unfortunately printing the result didn't work, so I did a review to check why, and I found that the other 2 functions where the problem, let me explain what happens, first a call is made to</p>
</pre>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> f0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
    <span style="color: #b1b100;">return</span> <span style="color: #990000;">implode</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #990000;">file</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>this function receives the name of the executing file (test.php in my case), read its content in an array, then glues all lines to create a 1 line string, without any new lines, then this result is passed to the following function:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> g0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
    <span style="color: #b1b100;">return</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'echo'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">false</span> ? <span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'print'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span> ? <span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'sprint'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span> ? <span style="color: #009900;">&#40;</span><span style="color: #990000;">strstr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$s</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'sprintf'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span> ? <span style="color: #009900; font-weight: bold;">false</span> <span style="color: #339933;">:</span> <span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">:</span> <span style="color: #990000;">exit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>which are a series of nested ternary conditions, looking for the words "echo,print,sprint,sprintf", if any of this words are in the encrypted file, then the script simply exits, that's why I was unable to print the decrypted code after calling the decoding function, so simply avoiding the call to this function will fix the issue and I will get my decrypted code.<br />
However, I didn't want to modify the original encrypted files, so a second approach I took was modifying the decryption function and echoing the output from there, so I've added a couple of lines (15 and 16) to the "<strong>y0666f0acdeed38d4cd9084ade1739498</strong>" function:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> y0666f0acdeed38d4cd9084ade1739498<span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$x16754c94f2e48aae0d6f34280507be58</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span> <span style="color: #339933;">=</span> <span style="color: #990000;">hexdec</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'&amp;H'</span> <span style="color: #339933;">.</span> <span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2</span><span style="color: #339933;">;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span> <span style="color: #339933;">&lt;</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span> <span style="color: #339933;">+=</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span> <span style="color: #339933;">=</span> <span style="color: #990000;">hexdec</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">trim</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x276e79316561733d64abdf00f8e8ae48</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x1b90e1035d4d268e0d8b1377f3dc85a2</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">&lt;</span> <span style="color: #000088;">$x16754c94f2e48aae0d6f34280507be58</span><span style="color: #009900;">&#41;</span>?<span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span> ^ <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$x897356954c2cd3d41b221e3f24f99bba</span><span style="color: #339933;">,</span> <span style="color: #000088;">$x71510c08e23d2083eda280afa650b045</span><span style="color: #339933;">-</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">&lt;=</span> <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #009900;">&#41;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">255</span> <span style="color: #339933;">+</span> <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #339933;">;</span>
        <span style="color: #b1b100;">else</span> <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span> <span style="color: #339933;">.</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$xab6389e47b1edcf1a5267d9cfb513ce5</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$x7a86c157ee9713c34fbd7a1ee40f0c5a</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$xe594cc261a3b25a9c99ec79da9c91ba5</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> 
    <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span><span style="color: #339933;">;</span>
    <span style="color: #990000;">die</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$x0b43c25ccf2340e23492d4d3141479dc</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>And voilà, I was able to see the source code.</p>
<p>So in short, just print the output of the decrypt function, and kill the script to get the decrypted code, I don't know if there are any other versions of the "911006.php" file, but I guess that the same logic applies.
</pre>
]]></content:encoded>
			<wfw:commentRss>http://ivanvillareal.com/development/php-development/decrypting-sourcecop-php-files/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>

