Zend Guard. Мнимая защита

Zend Guard. Мнимая защита.
 
В последнее время, люди активно "защищают" свои скрипты, кодируя избранные файлы или 
целый проект в Zend Guard. Этими людьми движет желание, чтобы их кодом не пользовались 
как попало, с одной стороны, это понятно. Но с другой стороны, ими движет алчность, они 
не покупают Zend Guard, а качают крякнутый, чтобы потом продавать свои поделки.
 
Расскажу, как можно просто декодировать файл, зашифрованный не последней оф версией, а взломаной.
Для этого существует сервис http://showmycode.com/
 
В поисках закодированных файлов я наткнулся на описание скрипта подсчета переходов на http://wapes.org.ru/
Бинго, база ип как раз закодирована, скачать ее можно по этой ссылке http://wapes.org.ru/xrek/oper.zip
Действительно, файл oper.php в архиве закодирован зендом, давайте его раскодируем, 
потому что базы ип должны быть бесплатными и свободными :)
Грузим этот файл в формочку на http://showmycode.com, вводим простенькую капчу и наслаждаемся результатом
 
<?php
if ( eregi( "oper.php", $PHP_SELF ) )
{
    exit( );
}
$oper = trim( htmlspecialchars( stripslashes( @$_GET['oper'] ) ) );
$oper = @preg_replace( "/[^0-9]/", "", $oper );
if ( $oper != "" )
{
    if ( !( $oper < 0 ) && !( 160 < $oper ) )
    {
        $oper = 0;
    }
}
else
{
    do
    {
        $ip = @$_SERVER['REMOTE_ADDR'];
        $ips = split( "\\.", $ip );
        @$ipnum = @$ips[3] + @$ips[2] * 256 + @$ips[1] * 256 * 256 + @$ips[0] * 256 * 256 * 256;
        $oper = 0;
        $IP101 = array( 1402273792, 1402277888, 3.25123e+009, 3.58203e+009, 3.64763e+009, 2.88676e+009, 1427800064 );
        $IP201 = array( 1402276863, 1402290175, 3.25123e+009, 3.58203e+009, 3.64763e+009, 2.88677e+009, 1427832831 );
        .............. продолжение не пишу
?>
 
Такой "удобный" формат записи ип придумал (скорее всего под укуркой) автор небезызвестного скрипта вапфикс.
А остальные переняли и юзают до сих пор.
 
Почему нельзя было хранить как-то так
array( 
  oper1 => array( 
    array(start, end), 
    array(start, end), 
    array(start, end), 
  ),
  oper2 => array( 
    array(start, end), 
    array(start, end), 
    array(start, end), 
  )  
)