parameters: (self)
return_statement: return ( tib.StackLimit, tib.StackBase )
docstring: @rtype:  tuple( int, int )
          @return: Stack beginning and end pointers, in memory addresses order.
              That is, the first pointer is the stack top, and the second pointer
              is the stack bottom, since the stack grows towards lower memory
              addresses.
          @raise   WindowsError: Raises an exception on error.
function: def get_stack_range(self):
          """
          @rtype:  tuple( int, int )
          @return: Stack beginning and end pointers, in memory addresses order.
              That is, the first pointer is the stack top, and the second pointer
              is the stack bottom, since the stack grows towards lower memory
              addresses.
          @raise   WindowsError: Raises an exception on error.
          """
          # TODO use teb.DeallocationStack too (max. possible stack size)
          teb = self.get_teb()
          tib = teb.NtTib
          return ( tib.StackLimit, tib.StackBase )
function_tokens: def get_stack_range ( self ) : # TODO use teb.DeallocationStack too (max. possible stack size) teb = self . get_teb ( ) tib = teb . NtTib return ( tib . StackLimit , tib . StackBase )