Ioncube> Зависает декодинг, не декодится

Issue #83 new
sidxx55 created an issue

Зависает декодинг, не декодится

Comments (3)

  1. Crypt Xor
    <?php 
    
    namespace Predis\Cluster\Distributor;
    
    /**
     * This class implements an hashring-based distributor that uses the same
     * algorithm of memcache to distribute keys in a cluster using client-side
     * sharding.
     *
     * @author Daniele Alessandri <suppakilla@gmail.com>
     * @author Lorenzo Castelli <lcastelli@gmail.com>
     */
    
    class HashRing implements DistributorInterface, \Predis\Cluster\Hash\HashGeneratorInterface
    {
        private $ring = NULL;
        private $ringKeys = NULL;
        private $ringKeysCount = NULL;
        private $replicas = NULL;
        private $nodeHashCallback = NULL;
        private $nodes = array(  );
    
        const DEFAULT_REPLICAS = 128;
        const DEFAULT_WEIGHT = 100;
    
        /**
         * @param int   $replicas         Number of replicas in the ring.
         * @param mixed $nodeHashCallback Callback returning a string used to calculate the hash of nodes.
         */
    
        public function __construct($replicas = self::DEFAULT_REPLICAS, $nodeHashCallback = NULL)
        {
            $this->replicas = $replicas;
            $this->nodeHashCallback = $nodeHashCallback;
        }
    
        /**
         * Adds a node to the ring with an optional weight.
         *
         * @param mixed $node   Node object.
         * @param int   $weight Weight for the node.
         */
    
        public function add($node, $weight = NULL)
        {
            $this->nodes[] = array( "object" => $node, "weight" => ((int) $weight ?: $this::DEFAULT_WEIGHT) );
            $this->reset();
        }
    
    <?php 
    
    namespace Controllers;
    
    class AbstractController
    {
        protected $_action = NULL;
        protected $_layout = "json";
        protected $_title = NULL;
        protected $_loadJs = array(  );
        protected $_loadCss = array(  );
        protected $_postParams = NULL;
        protected $_params = NULL;
        protected $_newVersion = false;
        protected $_response = array( "success" => true );
    
        const JSON = "json";
    
        public function __construct()
        {
            $this->_initRequest();
        }
    
        public function getParam($key, $default = NULL)
        {
            if( isset($this->_params[$key]) ) 
            {
                return $this->_params[$key];
            }
    
            return (isset($default) ? $default : null);
        }
    
  2. sidxx55 reporter

    проблема декодинга такого рода файлов в секциях декомпилятора CASE и IF, если закоментить код

     // {{{ if/elseif/else
             /* else if (isset($firstJmpOp)
                && ($firstJmpOp['opcode'] == XC_JMPZ_EX)
                && $firstJmpOp['jmpouts'][0] > $range[1]
                && (($lastOp['opcode'] == XC_JMP && !empty($lastOp['jmpouts']) && $lastOp['jmpouts'][0] == $range[0])
                    || ($lastOp['opcode'] == XC_BRK))........
    

    то вроде не зависает, хз (про IF hashRing.php), на этом отрезке кода где-то проблема...(относящегося к IF)

  3. Log in to comment