angr/analyses/cfg/indirect_jump_resolvers/resolver.py
def _is_target_valid(self, cfg, target):  # pylint:disable=no-self-use
        """
        Check if the resolved target is valid.

        :param cfg:         The CFG analysis object.
        :param int target:  The target to check.
        :return:            True if the target is valid. False otherwise.
        :rtype:             bool
        """

        if self.base_state is not None:
            try:
                if self.base_state.solver.is_true((self.base_state.memory.permissions(target) & 4) == 4):
                    return True
            except SimMemoryError:
                pass
            return False

        if cfg._addr_in_exec_memory_regions(target):
            # the jump target is executable
            return True
        if self.project.is_hooked(target):
            # the jump target is hooked
            return True
        return False

        Check if the resolved target is valid.

        :param cfg:         The CFG analysis object.
        :param int target:  The target to check.
        :return:            True if the target is valid. False otherwise.
        :rtype:             bool
        
Check if the resolved target is valid.
Check if the resolved target is valid .
def _is_target_valid(self, cfg, target):  
        if self.base_state is not None:
            try:
                if self.base_state.solver.is_true((self.base_state.memory.permissions(target) & 4) == 4):
                    return True
            except SimMemoryError:
                pass
            return False
        if cfg._addr_in_exec_memory_regions(target):
            return True
        if self.project.is_hooked(target):
            return True
        return False
def _is_target_valid ( self , cfg , target ) : if self . base_state is not None : try : if self . base_state . solver . is_true ( ( self . base_state . memory . permissions ( target ) & 4 ) == 4 ) : return True except SimMemoryError : pass return False if cfg . _addr_in_exec_memory_regions ( target ) : return True if self . project . is_hooked ( target ) : return True return False
Check if the resolved target is valid.
Check if the resolved target is valid .
# pylint:disable=no-self-use """
        Check if the resolved target is valid.

        :param cfg:         The CFG analysis object.
        :param int target:  The target to check.
        :return:            True if the target is valid. False otherwise.
        :rtype:             bool
        """ # the jump target is executable # the jump target is hooked
True if the target is valid. False otherwise.
True if the target is valid . False otherwise .
bool
self
cfg
The CFG analysis object.
The CFG analysis object .
target
The target to check.
The target to check .