Показать сообщение отдельно

  #55  
Старый 04.06.2008, 00:18
BlackSun
Познавший АНТИЧАТ
Регистрация: 01.04.2007
Сообщений: 1,268
Провел на форуме:
10046345

Репутация: 4589


По умолчанию

Код:
function gen_rnd($len) {
        $rnd_text=null;
        for ($i=0;$i<$len;$i++){
                $temp=rand(1,3);
                if ($i==0){
                        $temp2=rand(1,2);
                        if ($temp2==1) {
                                $rnd_text.=chr(rand(65,90));
                        } else {
                                $rnd_text.=chr(rand(97,122));
                        }
                } else {
                        if ($temp==1) {
                                $rnd_text.=chr(rand(65,90));
                        } elseif ($temp==2) {
                                $rnd_text.=chr(rand(97,122));
                        } else {
                                $rnd_text.=chr(rand(48,57));
                        }
                }
        }
        return $rnd_text;
}

function crupt_php_code($code)
{
  $start_pos = strpos($code, "<?php");
  if ($start_pos === false)
  {
	$start_pos = strpos($code, "<?");
	if ($start_pos !== false)
	{ $code = substr($code, $start_pos + 2, strlen($code)); }
  } else
  { $code = substr($code, $start_pos + 5, strlen($code)); }
  $start_pos = strrpos($code, "?>");
  if (is_int($start_pos)) { $code = substr($code, 0, $start_pos); }
  $code = base64_encode(gzdeflate($code));
  $code = "eval(gzinflate(base64_decode('".$code."')));";
  $key_name = '$'.gen_rnd(8);
  $key = rand(0, 99);
  $code_name = '$'.gen_rnd(8);
  $decoded_name = '$'.gen_rnd(8);
  $cycle_name = '$'.gen_rnd(4);
  $crupted_code = '';
  for ($i=0;$i<strlen($code);$i++)
  { $crupted_code .= chr(ord($code[$i]) ^ $key); }
  $crupted_code = base64_encode($crupted_code);
  $unpacker = $code_name.'=base64_decode('.$code_name.'); for ('.$cycle_name.'=0;'.$cycle_name.'<strlen('.$code_name.');'.$cycle_name.'++) { '.$decoded_name.' .= chr(ord('.$code_name.'['.$cycle_name.']) ^ '.$key_name.'); } eval('.$decoded_name.');';
  $xcode = "<? \r\n".$key_name.'='.$key.';'."\r\n".$code_name.'="'.$crupted_code.'";'."\r\n".$unpacker.' ?>';
  return $xcode;
}
 
Ответить с цитированием