(self, blocks)
return []
Get new exits by performing static analysis and heuristics. This is a fast and best-effort approach to get new
        exits for scenarios where states are not available (e.g. when building a fast CFG).

        :param list blocks: Blocks that are executed before reaching this SimProcedure.
        :return: A list of dicts. Each dict should contain the following entries: 'address', 'jumpkind', and 'namehint'.
        :rtype: list
Get new exits by performing static analysis and heuristics. This is a fast and best-effort approach to get new
        exits for scenarios where states are not available (e.g. when building a fast CFG).
Get new exits by performing static analysis and heuristics . This is a fast and best - effort approach to get new exits for scenarios where states are not available ( e . g . when building a fast CFG ) .
def static_exits(self, blocks):  # pylint: disable=unused-argument
        """
        Get new exits by performing static analysis and heuristics. This is a fast and best-effort approach to get new
        exits for scenarios where states are not available (e.g. when building a fast CFG).

        :param list blocks: Blocks that are executed before reaching this SimProcedure.
        :return: A list of dicts. Each dict should contain the following entries: 'address', 'jumpkind', and 'namehint'.
        :rtype: list
        """

        if self.ADDS_EXITS:
            raise SimProcedureError("static_exits() is not implemented for %s" % self)

        # This SimProcedure does not add any new exit
        return []
def static_exits ( self , blocks ) : # pylint: disable=unused-argument if self . ADDS_EXITS : raise SimProcedureError ( "static_exits() is not implemented for %s" % self ) # This SimProcedure does not add any new exit return [ ]