code: def _GenerateCRCTable():
          
          poly = 0xedb88320
          table = [0] * 256
          for i in range(256):
              crc = i
              for j in range(8):
                  if crc & 1:
                      crc = ((crc >> 1) & 0x7FFFFFFF) ^ poly
                  else:
                      crc = ((crc >> 1) & 0x7FFFFFFF)
              table[i] = crc
          return table
docs: Generate a CRC-32 table.
  
          ZIP encryption uses the CRC32 one-byte primitive for scrambling some
          internal keys. We noticed that a direct implementation is faster than
          relying on binascii.crc32().