code: def _ParseMRUListEntryValue(
        self, parser_mediator, registry_key, entry_index, entry_letter, **kwargs):
      
      value_string = ''
  
      value = registry_key.GetValueByName('{0:s}'.format(entry_letter))
      if value is None:
        parser_mediator.ProduceExtractionWarning(
            'missing MRUList value: {0:s} in key: {1:s}.'.format(
                entry_letter, registry_key.path))
  
      elif value.DataIsString():
        value_string = value.GetDataAsObject()
  
      elif value.DataIsBinaryData():
        logger.debug((
            '[{0:s}] Non-string MRUList entry value: {1:s} parsed as string '
            'in key: {2:s}.').format(self.NAME, entry_letter, registry_key.path))
  
        utf16le_string_map = self._GetDataTypeMap('utf16le_string')
  
        try:
          value_string = self._ReadStructureFromByteStream(
              value.data, 0, utf16le_string_map)
        except (ValueError, errors.ParseError) as exception:
          parser_mediator.ProduceExtractionWarning((
              'unable to parse MRUList entry value: {0:s} with error: '
              '{1!s}').format(entry_letter, exception))
  
        value_string = value_string.rstrip('\x00')
  
      return value_string
docs: Parses the MRUList entry value.
  
      Args:
        parser_mediator (ParserMediator): mediates interactions between parsers
            and other components, such as storage and dfvfs.
        registry_key (dfwinreg.WinRegistryKey): Windows Registry key that contains
             the MRUList value.
        entry_index (int): MRUList entry index.
        entry_letter (str): character value representing the entry.
  
      Returns:
        str: MRUList entry value.