(self, spoffset_expr: claripy.ast.Base)
return None
Extract the offset to the original stack pointer.

        :param spoffset_expr:   The claripy AST to parse.
        :return:                The offset to the original stack pointer, or None if `spoffset_expr` is not a supported
                                type of SpOffset expression.
Extract the offset to the original stack pointer.
Extract the offset to the original stack pointer .
def extract_offset_to_sp(self, spoffset_expr: claripy.ast.Base) -> Optional[int]:
        """
        Extract the offset to the original stack pointer.

        :param spoffset_expr:   The claripy AST to parse.
        :return:                The offset to the original stack pointer, or None if `spoffset_expr` is not a supported
                                type of SpOffset expression.
        """

        if 'SpOffset' in spoffset_expr.variables:
            # Local variable
            if spoffset_expr.op == "BVS":
                return 0
            elif spoffset_expr.op == '__add__':
                if len(spoffset_expr.args) == 1:
                    # Unexpected but fine
                    return 0
                elif isinstance(spoffset_expr.args[1], claripy.ast.Base) and spoffset_expr.args[1].op == "BVV":
                    return spoffset_expr.args[1].args[0]
        return None
def extract_offset_to_sp ( self , spoffset_expr : claripy . ast . Base ) -> Optional [ int ] : if 'SpOffset' in spoffset_expr . variables : # Local variable if spoffset_expr . op == "BVS" : return 0 elif spoffset_expr . op == '__add__' : if len ( spoffset_expr . args ) == 1 : # Unexpected but fine return 0 elif isinstance ( spoffset_expr . args [ 1 ] , claripy . ast . Base ) and spoffset_expr . args [ 1 ] . op == "BVV" : return spoffset_expr . args [ 1 ] . args [ 0 ] return None