code: def get_string(self, idx):
          
          if idx in self.hook_strings:
              return self.hook_strings[idx]
  
          try:
              off = self.__manage_item[TypeMapItem.STRING_ID_ITEM][idx].get_string_data_off()
          except IndexError:
              log.warning("unknown string item @ %d" % idx)
              return "AG:IS: invalid string"
  
          try:
              if self.recode_ascii_string:
                  if self.recode_ascii_string_meth:
                      return self.recode_ascii_string_meth(
                          self.__strings_off[off].get())
                  return self.get_ascii_string(self.__strings_off[off].get())
              return self.__strings_off[off].get()
          except KeyError:
              log.warning("unknown string item @ 0x%x(%d)" % (off, idx))
              return "AG:IS: invalid string"
docs: Return a string from the string table at index `idx`
  
          :param int idx: index in the string section