Ofuscador php libre para carpetas

Iniciado por Zell, 3 Enero 2011, 19:49 PM

0 Miembros y 1 Visitante están viendo este tema.

Zell

Hola a todos

Hace un año que estuve buscando un ofuscador php gratuito y bueno, pero solo encontre el de raizalab y otros demos, el problema con el ofuscador de railzab es que no ofuscaba clases. Entonces decidi probar hacer mi propio ofuscador php.

El ofuscador php que desarrolle es de facil uso, en un solo paso carga toda la carpeta que contiene al sitio web. Esta es la version 1.2.

MODO DE USO

  • Solo hay que establecer la carpeta que contiene el sitio web y la aplicacion se encarga de cargar todos los archivos de cualquier extension, pero por defecto solo los archivos de extension .php estaran habilitados para ser ofuscados.  
  • Luego hay que establecer la carpeta de salida. Aqui el ofuscador colocara todos los archivos y subcarpetas en el mismo orden de la carpeta original.  
  • Establecemos las variables u funciones que no seran ofuscadas, o que tendran un nombre personalizado.  
  • Establecemos las opciones del projecto, aqui la mas importante podria ser si se va habilitar ofuscar los nombres de las funciones. Luego esta el prefijo que es una cadena que se utilizara para generara todos los nombres.  
  • Por ultimo solo hacemos click en el boton GENERAR ARCHIVOS. Una vez que nos muestre un mensaje del final del proceso vamos a la carpeta de salida, luego copiamos la carpeta al servidor para ver los resultados.  



CARACTERISTICAS

  • La aplicacion trabaja sobre proyectos, se puede guardar, abrir, renombrar y crear nuevos projectos rapidamente.
  • Ofusca clases, funciones y variables.
  • Soporta dependencias de funciones y variables entre archivos (includes y requires).
  • Es un aplicacion hecha en lenguaje c#.Net 2.0.
  • Viene con su propio instalador.
  • Ofusca cadenas encerradas entre comillas dobles.
  • Arregla algunos errores de las versiones anteriores.
  • Genera un mapa de todas las variables y funciones de un archivo ofuscado, para ser utilizados posteriormente en otros projectos para no volver a ofuscarlos.  

OTROS

No soporta las variables funciones y pueden haber problemas con la funcion extract().  
Este ofuscador fue probado con joomla 1.5.  


REQUISITOS

Los requisitos de la aplicacion son:

Windows 98/Xp/Vista/7.
Net Framework 2.0.

El ofuscador php lo pueden descargar de :

https://skydrive.live.com/redir.aspx?cid=c3316392af8466c7&resid=C3316392AF8466C7!109




Pruebas con el ofuscador de codigo php
Se utilizaron tres archivos de codigo fuente: TestA.php, TestFuncs.php, TestVars.php. El archivo TestA.php utiliza variables y funciones de los otros dos archivos.

Archivo TestA.php
Código (php) [Seleccionar]


<?php
function ShowInfo($name,$cod)
{
    echo 
$name.' '.$cod;

    include 
'TestVars.php';
    require 
"TestFuncs.php";
    
$maxsizeGetMaxSize($name);

    for(
$i=1;$i<$maxsize;$i++)
    {
        
$size=$i*$base;
        echo 
"valor".$i.' = '.$cod.$prev.$size;

    }
}


$figure1 'tow';
$figure2 "tank";

class 
Info
{
    private 
$name;
    private 
$cod;
    var 
$uvar=array(truefalse);

    private 
$maxSize=0;

    public function 
__construct($name,$cod,$maxSize)
    {
        
$this->name=$name;
        
$this->cod $cod;
        
$this->maxSize $maxSize;
    }

    public function 
Show()
    {
        echo 
$this->name.$this->cod;
        
$this->ShowValues();
    }

    function 
showB()
    {
        echo 
"function showB ";
        return 
$this->uvar;
    }

    private function 
ShowValues()
    {
        require 
"./TestVars.php";

        for(
$i=1;$i<$this->maxSize;$i++)
        {
            echo 
"<p>";
            echo 
"valor".$i." = ".$this->cod.$prev.$i.$base;
            echo 
"</p>";
        }
    }
}
ShowInfo("hunter""ht"12);

$Informacion = new Info("Hierro","he",11);

echo 
"coment ?>
>";
echo " cadena de prueba //no".

"ex1";
echo "cadena de //co
varias lineas";
?>
<table class="uTable">
   <tr><td> tabla 1 empire <?php echo $figure1 ?> </td></tr>

</table>
<?php echo $figure2.' <hr>';
$Informacion->Show();

?>



Archivo TestVars.php
Código (php) [Seleccionar]

<?php
$base
=1;
$prev "dom";
?>




Archivo TestFuncs.php
Código (php) [Seleccionar]

<?php
function GetMaxSize($name)
{
    if (
$name!="unk") {
        return 
10;
    }
    else { return 
1;  }
}


?>




A continuacion se muestran los resultados al ofuscar los tres archivos en el mismo proyecto. Estos tres archivos funcionan igual que los originales

Archivo TestA.php ofuscado

Código (php) [Seleccionar]

<?php
 
function x11x2x31s155
($x11x2x31s3235,$x11x2x31s3236){echo $x11x2x31s3235.' '.$x11x2x31s3236;include 'TestVars.php';require "\x54\x65\x73t\x46\x75\x6ec\x73\x2e\x70\x68p";

$x11x2x31s3237x11x2x32s155($x11x2x31s3235);for($x11x2x31s3238=1;$x11x2x31s3238<$x11x2x31s3237;$x11x2x31s3238++)
{
$x11x2x31s3239=$x11x2x31s3238*$x11x2x33s2235;echo "\x76\x61\x6co\x72".$x11x2x31s3238.' = '.$x11x2x31s3236.$x11x2x33s2236.$x11x2x31s3239;
}}

$x11x2x31s4235 'tow';$x11x2x31s4236 "\x74\x61\x6ek";
class 
Info
{private $x11x2x31s156;private $x11x2x31s157;var $uvar=array(truefalse);private $x11x2x31s159=0;

public function 
__construct
($x11x2x31s5235,$x11x2x31s5236,$x11x2x31s5237){$this->x11x2x31s156=$x11x2x31s5235;$this->x11x2x31s157 $x11x2x31s5236;

$this->x11x2x31s159 $x11x2x31s5237;}
public function 
Show
(){echo $this->x11x2x31s156.$this->x11x2x31s157;$this->x11x2x31s163();}
 function 
showB
(){echo "\x66\x75\x6ec\x74\x69\x6fn\x20\x73\x68\x6fw\x42\x20";return $this->uvar;}

private function 
x11x2x31s163
(){require "\x2e\x2f\x54e\x73\x74\x56a\x72\x73\x2e\x70h\x70";for($x11x2x31s8235=1;$x11x2x31s8235<$this->x11x2x31s159;$x11x2x31s8235++)
{echo 
"\x3c\x70>";echo "\x76\x61\x6co\x72".$x11x2x31s8235."\x20\x3d\x20".$this->x11x2x31s157.$x11x2x33s2236.$x11x2x31s8235.$x11x2x33s2235;

echo 
"\x3c\x2f\x70>";}}}
x11x2x31s155("\x68\x75\x6et\x65\x72""\x68\x74"12);$x11x2x31s9235 = new Info("\x48\x69\x65r\x72\x6f","\x68\x65",11);

echo 
"\x63\x6f\x6de\x6e\x74\x20?>
\x20>";
echo "\x20\x63\x61d\x65\x6e\x61 \x64\x65\x20\x70r\x75\x65\x62a\x20\x2f\x2fn\x6f".
"\x65\x78\x31";
echo "\x63\x61\x64e\x6e\x61\x20d\x65\x20\x2f\x2fc\x6f
v\x61\x72\x69a\x73\x20\x6ci\x6e\x65\x61\x73"

;
?>
<table class="uTable">
<tr><td> tabla 1 empire
<?php echo $x11x2x31s4235 ?>

</td></tr>
</table>
<?php echo $x11x2x31s4236.' <hr>';$x11x2x31s9235->Show();

?>




Archivo TestVars.php ofuscado
Código (php) [Seleccionar]

<?php
$x11x2x33s2235
=1;$x11x2x33s2236 "\x64\x6f\x6d";

?>




Archivo TestFuncs.php ofuscado
Código (php) [Seleccionar]

<?php
 
function x11x2x32s155
($x11x2x32s3235){if ($x11x2x32s3235!="\x75\x6e\x6b") {return 10;}else { return 1;  }}

?>




Freeware downloads: http://www.extools.host56.com/

AFelipeTrujillo

se ve interesante !! ... tengo q correlo haber q tal !!

Zell

Si tienen alguna sugerencia o duda. Tal vez alguna funcionalidad para el ofuscador puedo hacerle algunas modificaciones.
Freeware downloads: http://www.extools.host56.com/

Zell

Para los que utilizan Linux con mono 2.0.1 como minimo, he añadido añadido una version del ofuscador para que corra en mono.

Primero descomprimen el archivo descargado luego para ejecutar el ofuscador solo tipean en la terminal de Linux.

Mono <CARPETA DEL OFUSCADOR PHP>/MyPhpGuard.exe.
Freeware downloads: http://www.extools.host56.com/

Zeroql

tu proyecto esta interesante, pero seria bueno que tambien ofuscara codigo que este en archivos html
por ejemplo tengo una web y por alla dentro del body tengo una llamada a una funcion o algun codigo de php, tu proyecto solo se detiene al terminar el php superior, seria bueno le le agregaras eso. y usa base 64 para lo k esta en comillas

bueno es solo un aporte.
Dime y lo olvido, enseñame y lo recuerdo, involucrame y lo aprendo.
/.-ZEROQL.-\   -----  #937675#


Zell

Citartu proyecto esta interesante, pero seria bueno que tambien ofuscara codigo que este en archivos html
por ejemplo tengo una web y por alla dentro del body tengo una llamada a una funcion o algun codigo de php, tu proyecto solo se detiene al terminar el php superior, seria bueno le le agregaras eso. y usa base 64 para lo k esta en comillas

La verdad no entendi la primera parte de tu comentario, me gustaria que colocaras un ejemplo de codigo html con php.
Este ofuscador puede procesar cualquier bloque de codigo php encerrado entre los tags <?php ?> dentro de cualquier archivo. Por defecto la aplicacion solo habilita la ofuscacion para archivos de extension .php pero podrias habilitarla para cualquier otro archivo del proyecto.
Freeware downloads: http://www.extools.host56.com/

Zeroql

tu proyecto solo ofusca aquello que es solo php

pero si tivieramos esto:

Código (php-brief) [Seleccionar]

<?
include ('cfg.php');
$cfg=array(readcfg());
if (cfg==true) {
$var=1;
}else {
$var=0;
}
?>
<html>
<title></title>
<body>
hola bueno tienes <? echo $var; ?>
</body>
</html>


ese codigo que esta dentro del cuerpo del html no lo reconoce tu proyecto, asi que no lo codifica. solo ofusca aquello que esta antes del <html>, seria bueno que le agraras eso tambien.
Dime y lo olvido, enseñame y lo recuerdo, involucrame y lo aprendo.
/.-ZEROQL.-\   -----  #937675#


Zell

Una solucion a tu problema es que inicies los bloques con el tag "<?php" en vez de "<?"

Asi los dos bloques de codigo serian reconocidos por el ofuscador.
Código (php) [Seleccionar]

<?php
include ('cfg.php');
$cfg=array(readcfg());
if (
cfg==true) {
$var=1;
}else {
$var=0;
}
?>

<html>
<title></title>
<body>
hola bueno tienes <?php echo $var?>
</body>
</html>


El ofuscador solo reconoce bloques que inicien con <?php para no confundirse con otros tipos de scripts que podrian incluirse en el mismo archivo.
Freeware downloads: http://www.extools.host56.com/

Zeroql

esa seria una solucion para MI, pero la idea es ayudarte a mejorar el sw que hicisteis,
igual solo el
<? lo toma php, no he visto ningun lenguaje para servers y que este en un archivo .php que tenga este iniciador de lenguaje.
mira el obfuscador de raizlabs, muy bueno por cierto.

Y si kieres puedes incluirle una codificacion en base64 para los textos que estan en comillas.
Dime y lo olvido, enseñame y lo recuerdo, involucrame y lo aprendo.
/.-ZEROQL.-\   -----  #937675#


Zell

#9
Aqui esta la ultima version del ofuscador php Myphpguard, esta es la version 1.35 "BETA".
Ahora el ofuscador oculta y codifica las cadenas y nombres de variables especialmente las variables predefinidas de php (SUPERGLOBALS) de varias maneras:
- El ofuscador utiliza base 64 para codificar las cadenas y despues puede generar estas cadenas con caracteres hexadecimales.
- Opcion para ocultar nombres de variables despues de renombrarlas, en esta opcion todas las SuperGlobals($_GET,$_POST,...) son ocultadas y codificadas en base 64 (Si la opcion de codificacion en base 64 esta habilitada).

Aqui esta el enlace actualizado para descargar el  ofuscador php Myphpguard:

https://skydrive.live.com/redir.aspx?cid=c3316392af8466c7&resid=C3316392AF8466C7!109


Aqui muestro un ejemplo con el ofuscador php Myphpguard 1.3.54 para que vean los resultados con todas las opciones activadas, todos los archivos php de este ejemplo junto con el archivo de projecto estan incluido en el zip que contiene el ofuscador:

Archivo Alltest.php
Código (php) [Seleccionar]

<?php


include "exfuncs.php";
include 
"./exvars.php";


echo 
"<HTML><HEAD><TITLE>$title</TITLE></HEAD><BODY>";

echo 
getElementH2($title);
//*** String Test
//$cadena1="String Test";
$cadena2='Multiple Line:
-$cadena1
-$cadena2'
;

$cadena3="\"$test1\" $cadena2";
addElementH3($test1);
echo 
"$cadena3.</br>";

function 
AddTestForm()
{
   echo 
'<form method="post" action="#" >
         <p>Texto:</p>
         <input id="Texto" type="text" style="width: 250px" name="Texto" />
         <input id="subEnviar" type="submit" value="Send" name="subMsg" />
         </form>'
;
}
//*** Class Test

/*
*
*
* Class Lista
*/
class Lista
{
    private 
$myList;
    private 
$cadena;
    private 
$style;

    public function 
Lista($uLista,$style="")
    {
        
$this->myList=$uLista;
        
$this->style=$style;
    }
    
    public function 
ShowLista()
    {
        if(!isset(
$this->myList) )
        {
           return;
        }
        
//
        
$this->cadena="<ol style='$this->style' >";
        
$this->AddElements();
        
$this->cadena.="</ol>";
        echo 
$this->cadena;
    }
    
    private function 
AddElements()
    {
         if(
count($this->myList)>10)
         {
             return;
         }
    
         foreach (
$this->myList as $item)
         {
            
$this->cadena.="<li>$item</li>";
         }
    }

}
addElementH3($test2);
$style="color: #cccccc;";
$colorLista=new Lista($elementos,$style);
$Lista=new Lista($elementos);

?>

<div><?php $colorLista->ShowLista(); ?> </div> <div><?php echo "<hr>";
$Lista->ShowLista(); ?>
</div>
<?php
//*** Form Test
addElementH3($test3);
AddTestForm();

if( isset(
$_POST["subMsg"]) )
{
   if(!empty(
$_POST["Texto"]))
   {
       
$texto=$_POST["Texto"];
       echo 
"<div style='border: 1px solid gray' >
       Texto:
$texto
       </div>"
;
   }

}
echo 
'</BODY></HTML>';
?>



Archivo Alltest.php ofuscado con Myphpguard 1.3.540

Código (php) [Seleccionar]

<?php ${"GL\x4fBA\x4cS"} ["xl1\x732\x31"]= array( "xl1s282"=>"Z\x58hm\x64W5\x6acy\x35w\x61HA\x3d""xl1s383"=>"Li9\x6ceHZ\x68c\x6eMuc\x47hw""xl1s484"=>"P\x45\x68\x55\x54U\x77+\x50EhF\x51\x55\x51+\x50F\x52JV\x45x\x46Pg=\x3d""xl1s585"=>"PC9\x55S\x56RM\x52\x5448L\x30h\x46Q\x55Q+\x50\x45JP\x52\x46k+"
"xl1s688"=>"T\x58Vsd\x47l\x77b\x47\x55\x67TGl\x75\x5aT\x6f\x74JGN\x68Z\x47Vu\x59\x54Et\x4aGNh\x5aG\x56uY\x54\x49\x3d""xl1s789"=>"Ljw\x76\x59\x6eI+""xl1s180"=>"x\x6c1\x7376""xl1s890"=>"PGZ\x76cm\x30gb\x57\x560a\x479k\x50\x53Jw\x623N\x30\x49\x69Bh\x593Rp\x6224\x39IiM\x69ID4\x67IC\x41g\x49\x43\x41gIC\x41\x38\x63D5U\x5aXh0\x62z\x6f8\x4c\x33A\x2bIC\x41\x67IC\x41\x67I\x43A\x67\x50Glu\x63\x48V0\x49Gl\x6bPSJ\x55ZX\x68\x30b\x79I\x67d\x48lw\x5aT\x30i\x64G\x564d\x43\x49gc3\x525\x62\x47U9I\x6edp\x5aHR\x6f\x4fi\x41y\x4eTBw\x65\x43\x49\x67b\x6dFt\x5aT\x30\x69VG\x564dG\x38i\x49C8+\x49CA\x67I\x43A\x67\x49CA\x67PG\x6cuc\x48V0\x49\x47lk\x50\x53Jzd\x57\x4aFbn\x5apY\x58I\x69IH\x525c\x47\x55\x39I\x6e\x4e\x31Ym\x31pdC\x49g\x64mFs\x64WU\x39I\x6c\x4elb\x6dQ\x69I\x47\x35h\x62\x57U9\x49nN1\x59k1z\x5a\x79I\x67Lz4\x67I\x43\x41gIC\x41\x67ICA\x38L2\x5a\x76\x63m\x30\x2b"
"xl1s178"=>"ba\x73e\x364\x5f\x64e\x63od\x65""xl1s991"=>"PG9\x73\x49HN0\x65Wx\x6cP\x53c\x3d""xl1s1092"=>"Jy\x41+""xl1s1193"=>"\x50C9v\x62D\x34=""xl1s1295"=>"PG\x78\x70\x50\x67==""xl1s1396"=>"\x50C\x39sa\x544\x3d"
"xl1s1498"=>"Y2\x39sb\x33I\x36IC\x4ejY\x32NjY\x32\x4d\x37""xl1s1499"=>"e\x47wx\x63z\x63y\x4dzc\x3d""xl1s1601"=>"PG\x68y\x50g==""xl1s181"=>"X\x31\x42PU\x31\x51=""xl1s1702"=>"c3\x56iTX\x4e\x6e""xl1s179"=>"\x78\x6c1s4\x34"
"xl1s1803"=>"VG\x564\x64G8\x3d""xl1s1904"=>"V\x47V4d\x478\x3d""xl1s2005"=>"PGR\x70\x64iBz\x64H\x6cs\x5aT0n\x59m9y\x5a\x47Vy\x4fiA\x78\x63H\x67\x67c\x329\x73\x61WQg\x5a3Jh\x65Sc\x67\x50iAg\x49CAg\x49CB\x55\x5aX\x680bz\x6f="
"xl1s2106"=>"I\x43A\x67IC\x41g\x49Dwv\x5aGl\x32P\x67==""xl1s2207"=>"PC9\x43T0\x52Z\x50jw\x76S\x46RN\x54D4\x3d",  "h1lI"=>"r1256");eval("e\x76\x61l\x28\x62a\x73e\x36\x34_\x64e\x63\x6f\x64e\x28\x27Zn\x56uY\x33Rp\x62\x324\x67eG\x77xcz\x632K\x43R4b\x44\x46zOT\x63pe\x79\x527\x49nhs\x4d\x56x4\x4ezMx\x4dFx4\x4dzgi\x66\x540k\x65yJc\x65\x44Q3\x58H\x670\x591\x784N\x47Z\x63eDQ\x79XHg\x30M\x56x4N\x47NT\x49n\x31\x62In\x68\x73MV\x78\x34NzM\x79\x4dSJd\x57yJc\x65\x44c4b\x44\x46\x63eD\x63\x7aMT\x64ce\x44M4\x49\x6c07c\x6dV0d\x58Ju\x49C\x52\x37\x49n\x68ceD\x5ajM\x58\x4dxXH\x67z\x4d\x44gi\x66S\x67key\x4a\x48TF\x78\x34NG\x5aC\x58Hg\x30MUx\x54\x49n1\x62I\x6e\x68c\x65\x44\x5a\x6aX\x48gz\x4dVx4\x4ezM\x79XH\x67z\x4d\x53\x4ad\x57yR7\x49nhc\x65D\x5ajM\x58\x4ece\x44M5N\x79J\x39XS\x6b7f\x51\x3d\x3d\x27\x29\x29\x3be\x76\x61\x6c\x28\x62\x61s\x656\x34_\x64\x65\x63\x6f\x64\x65\x28\x27ZnV\x75Y\x33Rpb\x324\x67eGw\x78czQ\x30KC\x524b\x44Fz\x4e\x6a\x55p\x653\x4al\x64\x48Vyb\x69\x41ke\x79Jce\x44\x513TF\x78\x34NGZ\x43\x51\x55\x78c\x65\x44U\x7a\x49\x6e1b\x49nhs\x58\x48gz\x4dVx4\x4e\x7aNc\x65\x44\x4dyMS\x4ad\x57y\x527\x49\x6cx\x34Nzh\x73\x4dXN\x63e\x44M2N\x53J\x39\x58Tt9\x27\x29\x29\x3b");
include ${
"G\x4c\x4f\x42A\x4c\x53"}["x\x6c1\x732\x31"]["xl1\x7318\x30"]("x\x6c1s2\x382");include ${"G\x4cO\x42A\x4cS"}["x\x6c1\x73\x321"]["xl1\x73180"]("x\x6c\x31s\x3383");
echo ${
"G\x4cO\x42A\x4cS"}["xl\x31s2\x31"]["\x78l1s\x3180"]("xl\x31\x734\x384")."$xl3s2235".${"\x47L\x4fB\x41L\x53"}["xl\x31s21"]["\x78\x6c1\x731\x380"]("xl\x31s\x35\x385");
echo 
xl2s155($xl3s2235);$xl1s2236=${"\x47\x4c\x4f\x42\x41\x4cS"}["xl\x31s21"]["\x78l\x31\x731\x38\x30"]("xl\x31s6\x388");
$xl1s2237="\"$xl3s2236\" "."$xl1s2236";xl2s156($xl3s2236);echo "$xl1s2237".${"\x47\x4c\x4f\x42\x41L\x53"}["xl1\x73\x32\x31"]["x\x6c1\x73180"]("xl1\x7378\x39");
 function 
xl1s155
(){echo ${"\x47\x4cO\x42\x41L\x53"}["xl1\x73\x321"]["x\x6c1s\x318\x30"]("xl1\x73890");}
class 
Lista
{private $xl1s156;private $xl1s157;private $xl1s158;
public function  
Lista
($xl1s4235,$xl1s4236=""){$this->xl1s156=$xl1s4235;$this->xl1s158=$xl1s4236;}
public function 
xlz11
(){if(!isset($this->xl1s156) ){return;}$this->xl1s157=${"\x47L\x4f\x42\x41L\x53"}["xl1\x732\x31"]["x\x6c1s\x318\x30"]("xl1\x73991")."$this->xl1s158".${"\x47L\x4f\x42\x41\x4cS"}["\x78l1\x732\x31"]["xl\x31s18\x30"]("\x78\x6c1s1\x309\x32");
$this->xl1s161();$this->xl1s157.=${"G\x4cO\x42\x41\x4c\x53"}["\x78l1s\x32\x31"]["xl\x31\x73180"]("\x78l\x31s1\x31\x393");
echo 
$this->xl1s157;}
private function 
xl1s161
(){if(count($this->xl1s156)>10){return;}foreach ($this->xl1s156 as $xl1s6235){$this->xl1s157.=${"G\x4c\x4fB\x41L\x53"}["\x78l1s\x321"]["xl\x31\x7318\x30"]("x\x6c1s\x312\x395")."$xl1s6235".${"G\x4c\x4fB\x41L\x53"}["x\x6c\x31s21"]["xl1\x731\x380"]("x\x6c1s\x31\x3396");
}}}
xl2s156($xl3s2237);$xl1s7236=${"G\x4c\x4f\x42A\x4cS"}["x\x6c1\x7321"]["xl1\x7318\x30"]("x\x6c1s1\x3498");$xl1s7237=new Lista($xl3s2240,$xl1s7236);
$xl1s7239=new Lista($xl3s2240);
?>

<div>
<?php ${${"G\x4cOB\x41LS"}["x\x6c1\x732\x31"]["\x78l1\x73\x318\x30"]("xl\x31\x73149\x39")}->xlz11(); ?>
</div> <div>
<?php echo ${"\x47L\x4f\x42\x41\x4cS"}["xl\x31s2\x31"]["\x78l1s\x3180"]("xl\x31\x7316\x301");
$xl1s7239->xlz11(); ?>

</div>
<?php
xl2s156
($xl3s2238);xl1s155();if( isset(${${"G\x4c\x4fB\x41L\x53"}["xl\x31s21"]["\x78\x6c1s\x31\x380"]("xl\x31s\x318\x31")}[${"\x47\x4cO\x42\x41L\x53"}["xl1\x7321"]["x\x6c1\x731\x380"]("xl1\x7317\x30\x32")]) )
{if(!empty(${${
"GL\x4fB\x41\x4c\x53"}["xl1\x73\x321"]["x\x6c1\x73\x3180"]("xl1\x7318\x31")}[${"\x47\x4c\x4fB\x41\x4cS"}["xl1\x732\x31"]["x\x6c1s\x31\x380"]("xl1\x73180\x33")]))
{
$xl1s10236=${${"GL\x4fBA\x4cS"}["\x78l\x31\x73\x321"]["xl\x31s18\x30"]("\x78\x6c1s\x3181")}[${"G\x4cO\x42A\x4c\x53"}["\x78l1\x7321"]["xl\x31s18\x30"]("\x78l\x31s\x3190\x34")];
echo ${
"G\x4cO\x42A\x4c\x53"}["\x78l1s\x321"]["xl\x31\x731\x38\x30"]("x\x6c1\x73\x320\x30\x35")."$xl1s10236".${"G\x4c\x4f\x42\x41L\x53"}["x\x6c\x31s2\x31"]["xl1\x731\x38\x30"]("x\x6c1s\x32106")
;}}echo ${
"G\x4c\x4f\x42\x41L\x53"}["x\x6c\x31s\x321"]["xl1\x731\x38\x30"]("x\x6c1s2\x3207");
?>


Freeware downloads: http://www.extools.host56.com/