parameters: (self, type_map: Dict[int, str], cookie: int = None)
return_statement: return self.vol.object_header_object_type
docstring: Across all Windows versions, the _OBJECT_HEADER embeds details on
          the type of object (i.e. process, file) but the way its embedded
          differs between versions.
  
          This API abstracts away those details.
docstring_summary: Across all Windows versions, the _OBJECT_HEADER embeds details on
          the type of object (i.e. process, file) but the way its embedded
          differs between versions.
docstring_tokens: Across all Windows versions the _OBJECT_HEADER embeds details on the type of object ( i . e . process file ) but the way its embedded differs between versions .
function: def get_object_type(self, type_map: Dict[int, str], cookie: int = None) -> Optional[str]:
          """Across all Windows versions, the _OBJECT_HEADER embeds details on
          the type of object (i.e. process, file) but the way its embedded
          differs between versions.
  
          This API abstracts away those details.
          """
  
          if self.vol.get('object_header_object_type', None) is not None:
              return self.vol.object_header_object_type
  
          try:
              # vista and earlier have a Type member
              self._vol['object_header_object_type'] = self.Type.Name.String
          except AttributeError:
              # windows 7 and later have a TypeIndex, but windows 10
              # further encodes the index value with nt1!ObHeaderCookie
              try:
                  type_index = ((self.vol.offset >> 8) ^ cookie ^ self.TypeIndex) & 0xFF
              except (AttributeError, TypeError):
                  type_index = self.TypeIndex
  
              self._vol['object_header_object_type'] = type_map.get(type_index)
          return self.vol.object_header_object_type
function_tokens: def get_object_type ( self , type_map : Dict [ int , str ] , cookie : int = None ) -> Optional [ str ] : if self . vol . get ( 'object_header_object_type' , None ) is not None : return self . vol . object_header_object_type try : # vista and earlier have a Type member self . _vol [ 'object_header_object_type' ] = self . Type . Name . String except AttributeError : # windows 7 and later have a TypeIndex, but windows 10 # further encodes the index value with nt1!ObHeaderCookie try : type_index = ( ( self . vol . offset >> 8 ) ^ cookie ^ self . TypeIndex ) & 0xFF except ( AttributeError , TypeError ) : type_index = self . TypeIndex self . _vol [ 'object_header_object_type' ] = type_map . get ( type_index ) return self . vol . object_header_object_type