(self, report=True)
return True
check if this state might be used in unicorn (has no concrete register)
check if this state might be used in unicorn (has no concrete register)
check if this state might be used in unicorn ( has no concrete register )
def _check_registers(self, report=True):
        ''' check if this state might be used in unicorn (has no concrete register)'''
        for r in self.state.arch.uc_regs.keys():
            v = getattr(self.state.regs, r)
            processed_v = self._process_value(v, 'reg')
            if processed_v is None or processed_v.symbolic:
                #l.info('detected symbolic register %s', r)
                if report:
                    self._report_symbolic_blocker(v, 'reg')
                return False

        if self.state.arch.vex_conditional_helpers:
            flags = ccall._get_flags(self.state)
            processed_flags = self._process_value(flags, 'reg')
            if processed_flags is None or processed_flags.symbolic:
                #l.info("detected symbolic rflags/eflags")
                if report:
                    self._report_symbolic_blocker(flags, 'reg')
                return False

        #l.debug('passed quick check')
        return True
def _check_registers ( self , report = True ) : for r in self . state . arch . uc_regs . keys ( ) : v = getattr ( self . state . regs , r ) processed_v = self . _process_value ( v , 'reg' ) if processed_v is None or processed_v . symbolic : #l.info('detected symbolic register %s', r) if report : self . _report_symbolic_blocker ( v , 'reg' ) return False if self . state . arch . vex_conditional_helpers : flags = ccall . _get_flags ( self . state ) processed_flags = self . _process_value ( flags , 'reg' ) if processed_flags is None or processed_flags . symbolic : #l.info("detected symbolic rflags/eflags") if report : self . _report_symbolic_blocker ( flags , 'reg' ) return False #l.debug('passed quick check') return True