docs: def _parseSections(self, data, elfHeader):
          """Returns a list of sections"""
          offset = elfHeader.header.e_shoff
          shdrs = []
          for i in range(elfHeader.header.e_shnum):
              shdr = self.__classes.SHDR.from_buffer(data, offset)
              section_bytes = None
              ba_section_bytes = None
              if shdr.sh_type != SHT.NOBITS:
                  section_bytes = (c_ubyte * shdr.sh_size).from_buffer(data, shdr.sh_offset)
                  ba_section_bytes = bytearray(section_bytes)
              shdrs.append(ShdrData(name=None,header=shdr, raw=section_bytes, bytes=ba_section_bytes))
              offset += elfHeader.header.e_shentsize
  
          if elfHeader.header.e_shstrndx != SHN.UNDEF:
              strtab = shdrs[elfHeader.header.e_shstrndx]
              strtab_offset = strtab.header.sh_offset
  
              for section in shdrs:
                  section.name = get_str(strtab.raw, section.header.sh_name)
  
          return shdrs