(self, cfg, addr, func_addr, block, jumpkind)
return False, None
Resolves jump tables.

        :param cfg: A CFG instance.
        :param int addr: IRSB address.
        :param int func_addr: The function address.
        :param pyvex.IRSB block: The IRSB.
        :return: A bool indicating whether the indirect jump is resolved successfully, and a list of resolved targets
        :rtype: tuple
Resolves jump tables.
Resolves jump tables .
def resolve(self, cfg, addr, func_addr, block, jumpkind):
        """
        Resolves jump tables.

        :param cfg: A CFG instance.
        :param int addr: IRSB address.
        :param int func_addr: The function address.
        :param pyvex.IRSB block: The IRSB.
        :return: A bool indicating whether the indirect jump is resolved successfully, and a list of resolved targets
        :rtype: tuple
        """

        self._max_targets = cfg._indirect_jump_target_limit

        for slice_steps in range(1, 5):
            # Perform a backward slicing from the jump target
            # Important: Do not go across function call boundaries
            b = Blade(cfg.graph, addr, -1,
                cfg=cfg, project=self.project,
                ignore_sp=False, ignore_bp=False,
                max_level=slice_steps, base_state=self.base_state, stop_at_calls=True, cross_insn_opt=True)

            l.debug("Try resolving %#x with a %d-level backward slice...", addr, slice_steps)
            r, targets = self._resolve(cfg, addr, func_addr, b)
            if r:
                return r, targets

        return False, None
def resolve ( self , cfg , addr , func_addr , block , jumpkind ) : self . _max_targets = cfg . _indirect_jump_target_limit for slice_steps in range ( 1 , 5 ) : # Perform a backward slicing from the jump target # Important: Do not go across function call boundaries b = Blade ( cfg . graph , addr , - 1 , cfg = cfg , project = self . project , ignore_sp = False , ignore_bp = False , max_level = slice_steps , base_state = self . base_state , stop_at_calls = True , cross_insn_opt = True ) l . debug ( "Try resolving %#x with a %d-level backward slice..." , addr , slice_steps ) r , targets = self . _resolve ( cfg , addr , func_addr , b ) if r : return r , targets return False , None