<?php
/*
* PHP LockIt! unlocker
* by Daniel Rozsnyo [ daniel@rozsnyo.com ]
*
* "a proof that security throught obscurity doesn't work"
*
*/
if (ereg( "[$]([^=]+)=[_][_]FILE[_][_][;]" . "[$]([^=]+)=[_][_]LINE[_][_][;]"
. "[$]([^=]+)[=]([0-9]+)[;]"
. "eval.*(base64_decode.['][^']*['].)", $input, $x)) {
// first pass
$ifilename = $x[1];
$ilinenum = $x[2];
$ioffset = $x[3];
$offset = $x[4];
$decoder = $x[5];
// get the decoder
$decoder = eval("return $decoder;"); // decipher the decoder
ereg("[$]([^=]+)[=].*[$]([^=]+)=.base64",$decoder,$x); $ihandle = $x[1];
$iout = $x[2];
$decoder = str_replace($ifilename,'filename',$decoder); // the decoder is our slave!
$decoder = str_replace('eval($output);','return $output;',$decoder); $decoder = '$line=2;'.$decoder;
// sandbox
// remove expiration time
// some more deciphering
ereg('^[$]([^=]+)=',$next,$x); // the decoder is our slave, again!
$next = str_replace('eval($output)','return $output',$next); // final pass
// finish
echo '<','?php',$code,'?','>',"\n";
} else die("Failed. No base64_decode anymore.\n"); ?>