
bfd_boolean process_section_headers(Filedata *filedata)

{
  bfd_vma bVar1;
  bfd_boolean bVar2;
  int iVar3;
  int iVar4;
  int iVar5;
  undefined4 uVar6;
  byte bVar7;
  ushort uVar8;
  int iVar9;
  int iVar10;
  byte *pbVar11;
  ulong uVar12;
  elf_section_list *peVar13;
  Elf_Internal_Shdr *pEVar14;
  Filedata *pFVar15;
  Filedata *filedata_1;
  void *pvVar16;
  FILE *pFVar17;
  char *pcVar18;
  long lVar19;
  uint uVar20;
  ulong uVar21;
  byte *pbVar22;
  bfd_size_type bVar23;
  char *__format;
  byte *pbVar24;
  uint uVar25;
  uint uVar26;
  Elf_Internal_Shdr *section;
  bool bVar27;
  bool bVar28;
  undefined1 uVar29;
  bool bVar30;
  undefined1 uVar31;
  byte bVar32;
  uchar buf_3 [24];
  char buf [40];
  
  bVar32 = 0;
  uVar25 = (filedata->file_header).e_shnum;
  filedata->section_headers = (Elf_Internal_Shdr *)0x0;
  if (uVar25 == 0) {
    if ((filedata->file_header).e_shoff != 0) {
      pcVar18 = (char *)dcgettext(0,
                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"
                                  ,5);
      warn(pcVar18);
      return 0;
    }
    if (do_sections == 0) {
      return 1;
    }
    pcVar18 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);
    printf(pcVar18);
    return 1;
  }
  if ((do_sections != 0) && (do_header == 0)) {
    bVar23 = (filedata->file_header).e_shoff;
    pcVar18 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",
                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,
                                 5);
    printf(pcVar18,(ulong)uVar25,bVar23);
  }
  if (is_32bit_elf == 0) {
    iVar9 = get_64bit_section_headers(filedata,0);
  }
  else {
    iVar9 = get_32bit_section_headers(filedata,0);
  }
  if (iVar9 == 0) {
    return 0;
  }
  uVar25 = (filedata->file_header).e_shstrndx;
  section = filedata->section_headers;
  if (((uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum)) &&
     (section[uVar25].sh_size != 0)) {
    pFVar15 = (Filedata *)dcgettext(0,"string table",5);
    pcVar18 = (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size
                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)
    ;
    bVar23 = 0;
    filedata->string_table = pcVar18;
    if (pcVar18 != (char *)0x0) {
      bVar23 = section[uVar25].sh_size;
    }
    filedata->string_table_length = bVar23;
    section = filedata->section_headers;
  }
  dynamic_symbols = (Elf_Internal_Sym *)0x0;
  dynamic_strings = (char *)0x0;
  dynamic_syminfo = (Elf_Internal_Syminfo *)0x0;
  symtab_shndx_list = (elf_section_list *)0x0;
  eh_addr_size = (-(uint)(is_32bit_elf == 0) & 4) + 4;
  uVar8 = (filedata->file_header).e_machine;
  if (uVar8 < 0x30) {
    if (uVar8 < 0x2e) {
      if (((uVar8 == 8) || (uVar8 == 10)) &&
         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {
        if (section != (Elf_Internal_Shdr *)0x0) {
          pEVar14 = find_section(filedata,".gcc_compiled_long32");
          section = filedata->section_headers;
          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;
        }
        eh_addr_size = 8;
      }
    }
    else {
      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;
      if (uVar25 != 0x830000) {
        if (uVar25 < 0x830001) {
          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {
LAB_0012c4d0:
            eh_addr_size = 4;
            goto LAB_0012ad0a;
          }
          if (uVar25 != 0x800000) goto LAB_0012ad0a;
        }
        else {
          if (uVar25 == 0x850000) goto LAB_0012c4d0;
          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;
        }
      }
LAB_0012b791:
      eh_addr_size = 2;
    }
  }
  else if (((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&
          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)) goto LAB_0012b791;
LAB_0012ad0a:
  if ((filedata->file_header).e_shnum == 0) {
    if (do_sections == 0) {
      return 1;
    }
LAB_0012c296:
    pcVar18 = "\nSection Header:\n";
  }
  else {
    uVar25 = 0;
    do {
      if (section == (Elf_Internal_Shdr *)0x0) {
        pbVar11 = (byte *)dcgettext(0,"<none>",5);
      }
      else if (filedata->string_table == (char *)0x0) {
        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);
      }
      else {
        pbVar11 = (byte *)(filedata->string_table + section->sh_name);
        if (filedata->string_table_length <= (ulong)section->sh_name) {
          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);
        }
      }
      iVar5 = do_debug_cu_index;
      iVar4 = do_debug_addr;
      iVar3 = do_debug_loc;
      iVar9 = do_debug_str;
      uVar20 = section->sh_type;
      if (uVar20 == 0xb) {
        pcVar18 = "File contains multiple dynamic symbol tables\n";
        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {
          if (is_32bit_elf == 0) {
            if (section->sh_entsize != 0x18) {
              uVar20 = 0x18;
              bVar23 = 0x18;
              goto LAB_0012b923;
            }
LAB_0012b7d2:
            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);
          }
          else {
            if (section->sh_entsize != 0x10) {
              uVar20 = 0x10;
              bVar23 = 0x10;
LAB_0012b923:
              sprintf(buf,"%016lx");
              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
              error(pcVar18,(ulong)uVar25,buf);
              pcVar18 = (char *)dcgettext(0,
                                          "(Using the expected size of %u for the rest of this dump)\n"
                                          ,5);
              error(pcVar18,(ulong)uVar20);
              bVar2 = is_32bit_elf;
              section->sh_entsize = bVar23;
              if (bVar2 == 0) goto LAB_0012b7d2;
            }
            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);
          }
        }
        else {
LAB_0012b69a:
          pcVar18 = (char *)dcgettext(0,pcVar18,5);
          error(pcVar18);
        }
      }
      else {
        bVar27 = uVar20 < 3;
        bVar30 = uVar20 == 3;
        if (bVar30) {
          lVar19 = 8;
          pbVar22 = pbVar11;
          pbVar24 = (byte *)".dynstr";
          do {
            if (lVar19 == 0) break;
            lVar19 = lVar19 + -1;
            bVar27 = *pbVar22 < *pbVar24;
            bVar30 = *pbVar22 == *pbVar24;
            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
          } while (bVar30);
          if ((!bVar27 && !bVar30) == bVar27) {
            if (dynamic_strings != (char *)0x0) {
              pcVar18 = "File contains multiple dynamic string tables\n";
              goto LAB_0012b69a;
            }
            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);
            dynamic_strings =
                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,
                                  (ulong)&filedata->file_size,section->sh_offset,1,
                                  (char *)section->sh_size,pFVar15);
            dynamic_strings_length = 0;
            if (dynamic_strings != (char *)0x0) {
              dynamic_strings_length = section->sh_size;
            }
          }
          else {
LAB_0012b1ff:
            bVar27 = false;
            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&
                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&
                             do_debug_aranges == 0) && do_debug_frames == 0) &&
                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&
                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&
                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);
            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)
                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&
                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&
                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&
                 do_debug_cu_index == 0) && do_debug_links == 0) &&
                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;
            lVar19 = 7;
            pbVar22 = pbVar11;
            pbVar24 = (byte *)".debug_";
            do {
              if (lVar19 == 0) break;
              lVar19 = lVar19 + -1;
              bVar27 = *pbVar22 < *pbVar24;
              bVar30 = *pbVar22 == *pbVar24;
              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
            } while (bVar30);
            bVar28 = false;
            bVar27 = (!bVar27 && !bVar30) == bVar27;
            if (bVar27) {
LAB_0012b3f7:
              pbVar22 = pbVar11 + 7;
              if (pbVar11[1] == 0x7a) {
                pbVar22 = pbVar11 + 8;
              }
              if (do_debugging == 0) {
                bVar30 = false;
                bVar27 = do_debug_info == 0;
                if (bVar27) {
LAB_0012b446:
                  bVar27 = false;
                  bVar30 = do_debug_abbrevs == 0;
                  if (!bVar30) {
                    lVar19 = 6;
                    pbVar11 = pbVar22;
                    pbVar24 = (byte *)0x1826c0;
                    do {
                      if (lVar19 == 0) break;
                      lVar19 = lVar19 + -1;
                      bVar27 = *pbVar11 < *pbVar24;
                      bVar30 = *pbVar11 == *pbVar24;
                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                    } while (bVar30);
                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;
                  }
                  bVar27 = false;
                  bVar30 = do_debug_lines == 0;
                  if (bVar30) {
LAB_0012b490:
                    bVar27 = false;
                    bVar30 = do_debug_pubnames == 0;
                    if (bVar30) {
                      bVar27 = false;
                      bVar30 = do_debug_pubtypes == 0;
                      if (bVar30) {
LAB_0012b4dd:
                        bVar27 = false;
                        bVar30 = do_debug_aranges == 0;
                        if (!bVar30) {
                          lVar19 = 7;
                          pbVar11 = pbVar22;
                          pbVar24 = (byte *)0x1826ce;
                          do {
                            if (lVar19 == 0) break;
                            lVar19 = lVar19 + -1;
                            bVar27 = *pbVar11 < *pbVar24;
                            bVar30 = *pbVar11 == *pbVar24;
                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                          } while (bVar30);
                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;
                        }
                        bVar27 = false;
                        bVar30 = do_debug_ranges == 0;
                        if (bVar30) {
LAB_0012b547:
                          bVar27 = false;
                          bVar30 = do_debug_frames == 0;
                          if (!bVar30) {
                            lVar19 = 5;
                            pbVar11 = pbVar22;
                            pbVar24 = (byte *)0x18246b;
                            do {
                              if (lVar19 == 0) break;
                              lVar19 = lVar19 + -1;
                              bVar27 = *pbVar11 < *pbVar24;
                              bVar30 = *pbVar11 == *pbVar24;
                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                            } while (bVar30);
                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;
                          }
                          bVar27 = false;
                          bVar30 = do_debug_macinfo == 0;
                          if (!bVar30) {
                            lVar19 = 7;
                            pbVar11 = pbVar22;
                            pbVar24 = (byte *)0x1824f6;
                            do {
                              if (lVar19 == 0) break;
                              lVar19 = lVar19 + -1;
                              bVar27 = *pbVar11 < *pbVar24;
                              bVar30 = *pbVar11 == *pbVar24;
                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                            } while (bVar30);
                            if (((!bVar27 && !bVar30) == bVar27) ||
                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))
                            goto LAB_0012b3c0;
                          }
                          if (((((iVar9 == 0) ||
                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&
                               ((iVar3 == 0 ||
                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&
                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&
                              ((iVar4 == 0 ||
                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&
                             ((iVar5 == 0 ||
                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&
                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))
                          goto LAB_0012ad90;
                        }
                        else {
                          lVar19 = 6;
                          pbVar11 = pbVar22;
                          pbVar24 = (byte *)0x185a13;
                          do {
                            if (lVar19 == 0) break;
                            lVar19 = lVar19 + -1;
                            bVar27 = *pbVar11 < *pbVar24;
                            bVar30 = *pbVar11 == *pbVar24;
                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                          } while (bVar30);
                          bVar28 = false;
                          bVar27 = (!bVar27 && !bVar30) == bVar27;
                          if (!bVar27) {
                            lVar19 = 8;
                            pbVar11 = pbVar22;
                            pbVar24 = (byte *)0x182607;
                            do {
                              if (lVar19 == 0) break;
                              lVar19 = lVar19 + -1;
                              bVar28 = *pbVar11 < *pbVar24;
                              bVar27 = *pbVar11 == *pbVar24;
                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                            } while (bVar27);
                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;
                          }
                        }
                      }
                      else {
                        lVar19 = 8;
                        pbVar11 = pbVar22;
                        pbVar24 = (byte *)0x1862bf;
                        do {
                          if (lVar19 == 0) break;
                          lVar19 = lVar19 + -1;
                          bVar27 = *pbVar11 < *pbVar24;
                          bVar30 = *pbVar11 == *pbVar24;
                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                        } while (bVar30);
                        bVar27 = (!bVar27 && !bVar30) == bVar27;
joined_r0x0012c500:
                        if (!bVar27) {
                          pcVar18 = ".debug_gnu_pubtypes";
LAB_0012b4cb:
                          bVar30 = false;
                          lVar19 = 0xc;
                          pbVar11 = pbVar22;
                          pbVar24 = (byte *)(pcVar18 + 7);
                          do {
                            if (lVar19 == 0) break;
                            lVar19 = lVar19 + -1;
                            bVar30 = *pbVar11 < *pbVar24;
                            bVar27 = *pbVar11 == *pbVar24;
                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                          } while (bVar27);
                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;
                        }
                      }
                    }
                    else {
                      lVar19 = 8;
                      pbVar11 = pbVar22;
                      pbVar24 = (byte *)0x1862ac;
                      do {
                        if (lVar19 == 0) break;
                        lVar19 = lVar19 + -1;
                        bVar27 = *pbVar11 < *pbVar24;
                        bVar30 = *pbVar11 == *pbVar24;
                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                      } while (bVar30);
                      if ((!bVar27 && !bVar30) != bVar27) {
                        pcVar18 = ".debug_gnu_pubnames";
                        bVar30 = false;
                        bVar27 = do_debug_pubtypes == 0;
                        if (bVar27) goto LAB_0012b4cb;
                        lVar19 = 8;
                        pbVar11 = pbVar22;
                        pbVar24 = (byte *)0x1862bf;
                        do {
                          if (lVar19 == 0) break;
                          lVar19 = lVar19 + -1;
                          bVar30 = *pbVar11 < *pbVar24;
                          bVar27 = *pbVar11 == *pbVar24;
                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                        } while (bVar27);
                        bVar28 = false;
                        bVar27 = (!bVar30 && !bVar27) == bVar30;
                        if (!bVar27) {
                          lVar19 = 0xc;
                          pbVar11 = pbVar22;
                          pbVar24 = (byte *)0x1824cd;
                          do {
                            if (lVar19 == 0) break;
                            lVar19 = lVar19 + -1;
                            bVar28 = *pbVar11 < *pbVar24;
                            bVar27 = *pbVar11 == *pbVar24;
                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                          } while (bVar27);
                          bVar27 = (!bVar28 && !bVar27) == bVar28;
                          goto joined_r0x0012c500;
                        }
                      }
                    }
                  }
                  else {
                    lVar19 = 5;
                    pbVar11 = pbVar22;
                    pbVar24 = (byte *)0x182493;
                    do {
                      if (lVar19 == 0) break;
                      lVar19 = lVar19 + -1;
                      bVar27 = *pbVar11 < *pbVar24;
                      bVar30 = *pbVar11 == *pbVar24;
                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                    } while (bVar30);
                    bVar28 = false;
                    bVar27 = (!bVar27 && !bVar30) == bVar27;
                    if (!bVar27) {
                      lVar19 = 5;
                      pbVar11 = pbVar22;
                      pbVar24 = (byte *)0x16ac78;
                      do {
                        if (lVar19 == 0) break;
                        lVar19 = lVar19 + -1;
                        bVar28 = *pbVar11 < *pbVar24;
                        bVar27 = *pbVar11 == *pbVar24;
                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                      } while (bVar27);
                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;
                    }
                  }
                }
                else {
                  lVar19 = 4;
                  pbVar11 = pbVar22;
                  pbVar24 = (byte *)0x1663a6;
                  do {
                    if (lVar19 == 0) break;
                    lVar19 = lVar19 + -1;
                    bVar30 = *pbVar11 < *pbVar24;
                    bVar27 = *pbVar11 == *pbVar24;
                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                  } while (bVar27);
                  bVar28 = false;
                  bVar27 = (!bVar30 && !bVar27) == bVar30;
                  if (!bVar27) {
                    lVar19 = 5;
                    pbVar11 = pbVar22;
                    pbVar24 = (byte *)0x1857df;
                    do {
                      if (lVar19 == 0) break;
                      lVar19 = lVar19 + -1;
                      bVar28 = *pbVar11 < *pbVar24;
                      bVar27 = *pbVar11 == *pbVar24;
                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                    } while (bVar27);
                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;
                  }
                }
              }
            }
            else {
              lVar19 = 8;
              pbVar22 = pbVar11;
              pbVar24 = (byte *)".zdebug_";
              do {
                if (lVar19 == 0) break;
                lVar19 = lVar19 + -1;
                bVar28 = *pbVar22 < *pbVar24;
                bVar27 = *pbVar22 == *pbVar24;
                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
              } while (bVar27);
              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;
              bVar27 = false;
              bVar30 = do_debug_info == 0 && do_debugging == 0;
              if (bVar30) {
LAB_0012b2b0:
                bVar27 = false;
                bVar30 = do_debug_frames == 0;
                if (!bVar30) {
                  lVar19 = 10;
                  pbVar22 = pbVar11;
                  pbVar24 = (byte *)".eh_frame";
                  do {
                    if (lVar19 == 0) break;
                    lVar19 = lVar19 + -1;
                    bVar27 = *pbVar22 < *pbVar24;
                    bVar30 = *pbVar22 == *pbVar24;
                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                  } while (bVar30);
                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;
                }
                bVar27 = false;
                bVar30 = do_gdb_index == 0;
                if (bVar30) {
LAB_0012b31e:
                  bVar27 = false;
                  bVar30 = do_debugging == 0;
                  if (bVar30) {
                    bVar27 = false;
                    bVar30 = do_trace_info == 0;
                    if (!bVar30) {
                      lVar19 = 7;
                      pbVar22 = pbVar11;
                      pbVar24 = (byte *)".trace_";
                      do {
                        if (lVar19 == 0) break;
                        lVar19 = lVar19 + -1;
                        bVar27 = *pbVar22 < *pbVar24;
                        bVar30 = *pbVar22 == *pbVar24;
                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                      } while (bVar30);
                      if ((!bVar27 && !bVar30) == bVar27) {
                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;
                        bVar30 = pbVar11 + 7 == (byte *)0x0;
                        lVar19 = 5;
                        pbVar22 = pbVar11 + 7;
                        pbVar24 = (byte *)0x1663a6;
                        do {
                          if (lVar19 == 0) break;
                          lVar19 = lVar19 + -1;
                          bVar27 = *pbVar22 < *pbVar24;
                          bVar30 = *pbVar22 == *pbVar24;
                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                        } while (bVar30);
                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;
                        goto LAB_0012b3c0;
                      }
LAB_0012c5d2:
                      bVar27 = do_debug_links == 0;
                      if (bVar27) goto LAB_0012ad90;
                      goto LAB_0012c536;
                    }
                    bVar27 = false;
                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;
                    if (bVar30) goto LAB_0012c5d2;
                    lVar19 = 7;
                    pbVar22 = pbVar11;
                    pbVar24 = (byte *)".trace_";
                    do {
                      if (lVar19 == 0) break;
                      lVar19 = lVar19 + -1;
                      bVar27 = *pbVar22 < *pbVar24;
                      bVar30 = *pbVar22 == *pbVar24;
                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                    } while (bVar30);
                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;
LAB_0012b36f:
                    bVar27 = false;
                    bVar30 = do_trace_abbrevs == 0;
                    if (!bVar30) {
                      lVar19 = 7;
                      pbVar22 = pbVar11 + 7;
                      pbVar24 = (byte *)0x1826c0;
                      do {
                        if (lVar19 == 0) break;
                        lVar19 = lVar19 + -1;
                        bVar27 = *pbVar22 < *pbVar24;
                        bVar30 = *pbVar22 == *pbVar24;
                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                      } while (bVar30);
                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;
                    }
                    bVar28 = false;
                    bVar27 = do_trace_aranges == 0;
                    if (bVar27) goto LAB_0012ad90;
                    lVar19 = 8;
                    pbVar11 = pbVar11 + 7;
                    pcVar18 = (char *)(byte *)0x1826ce;
                  }
                  else {
                    lVar19 = 7;
                    pbVar22 = pbVar11;
                    pbVar24 = (byte *)".trace_";
                    do {
                      if (lVar19 == 0) break;
                      lVar19 = lVar19 + -1;
                      bVar27 = *pbVar22 < *pbVar24;
                      bVar30 = *pbVar22 == *pbVar24;
                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                    } while (bVar30);
                    bVar27 = (!bVar27 && !bVar30) == bVar27;
                    if (bVar27) goto LAB_0012b3c0;
LAB_0012c536:
                    bVar30 = false;
                    lVar19 = 0xe;
                    pbVar22 = pbVar11;
                    pbVar24 = (byte *)".gnu_debuglink";
                    do {
                      if (lVar19 == 0) break;
                      lVar19 = lVar19 + -1;
                      bVar30 = *pbVar22 < *pbVar24;
                      bVar27 = *pbVar22 == *pbVar24;
                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                    } while (bVar27);
                    bVar28 = false;
                    bVar27 = (!bVar30 && !bVar27) == bVar30;
                    if (bVar27) goto LAB_0012b3c0;
                    lVar19 = 0x11;
                    pcVar18 = ".gnu_debugaltlink";
                  }
                  do {
                    if (lVar19 == 0) break;
                    lVar19 = lVar19 + -1;
                    bVar28 = *pbVar11 < (byte)*pcVar18;
                    bVar27 = *pbVar11 == *pcVar18;
                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);
                  } while (bVar27);
                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;
                }
                else {
                  lVar19 = 0xb;
                  pbVar22 = pbVar11;
                  pbVar24 = (byte *)".gdb_index";
                  do {
                    if (lVar19 == 0) break;
                    lVar19 = lVar19 + -1;
                    bVar27 = *pbVar22 < *pbVar24;
                    bVar30 = *pbVar22 == *pbVar24;
                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                  } while (bVar30);
                  bVar28 = false;
                  bVar27 = (!bVar27 && !bVar30) == bVar27;
                  if (!bVar27) {
                    lVar19 = 0xd;
                    pbVar22 = pbVar11;
                    pbVar24 = (byte *)".debug_names";
                    do {
                      if (lVar19 == 0) break;
                      lVar19 = lVar19 + -1;
                      bVar28 = *pbVar22 < *pbVar24;
                      bVar27 = *pbVar22 == *pbVar24;
                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                    } while (bVar27);
                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;
                  }
                }
              }
              else {
                lVar19 = 0x11;
                pbVar22 = pbVar11;
                pbVar24 = (byte *)".gnu.linkonce.wi.";
                do {
                  if (lVar19 == 0) break;
                  lVar19 = lVar19 + -1;
                  bVar27 = *pbVar22 < *pbVar24;
                  bVar30 = *pbVar22 == *pbVar24;
                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                } while (bVar30);
                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;
              }
            }
LAB_0012b3c0:
            request_dump_bynumber(filedata,uVar25,'\x04');
          }
        }
        else if (uVar20 == 0x12) {
          peVar13 = (elf_section_list *)xmalloc(0x10);
          peVar13->hdr = section;
          peVar13->next = symtab_shndx_list;
          symtab_shndx_list = peVar13;
        }
        else if (uVar20 == 2) {
          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;
          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;
        }
        else if (uVar20 == 0x11) {
          if (section->sh_entsize != 4) {
            sprintf(buf,"%016lx");
            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
            error(pcVar18,(ulong)uVar25,buf);
            pcVar18 = (char *)dcgettext(0,
                                        "(Using the expected size of %u for the rest of this dump)\n"
                                        ,5);
            error(pcVar18,4);
            section->sh_entsize = 4;
          }
        }
        else if (uVar20 == 9) {
          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;
          if (section->sh_entsize != bVar23) {
LAB_0012b6ee:
            sprintf(buf,"%016lx");
            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
            error(pcVar18,(ulong)uVar25,buf);
            pcVar18 = (char *)dcgettext(0,
                                        "(Using the expected size of %u for the rest of this dump)\n"
                                        ,5);
            error(pcVar18,bVar23);
            section->sh_entsize = bVar23;
          }
        }
        else {
          if (uVar20 != 4) goto LAB_0012b1ff;
          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;
          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;
        }
      }
LAB_0012ad90:
      uVar20 = (filedata->file_header).e_shnum;
      uVar25 = uVar25 + 1;
      section = section + 1;
    } while (uVar25 < uVar20);
    if (do_sections == 0) {
      return 1;
    }
    if (uVar20 < 2) goto LAB_0012c296;
    pcVar18 = "\nSection Headers:\n";
  }
  pcVar18 = (char *)dcgettext(0,pcVar18,5);
  printf(pcVar18);
  if (is_32bit_elf == 0) {
    if (do_wide == 0) {
      if (do_section_details == 0) {
        pcVar18 = (char *)dcgettext(0,
                                    "  [Nr] Name              Type             Address           Offset\n"
                                    ,5);
        printf(pcVar18);
        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";
      }
      else {
        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);
        printf(pcVar18);
        pcVar18 = (char *)dcgettext(0,
                                    "       Type              Address          Offset            Link\n"
                                    ,5);
        printf(pcVar18);
        pcVar18 = "       Size              EntSize          Info              Align\n";
      }
    }
    else {
      pcVar18 = 
      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";
      if (do_section_details != 0) {
        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);
        printf(pcVar18);
        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";
      }
    }
  }
  else {
    pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";
    if (do_section_details != 0) {
      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);
      printf(pcVar18);
      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";
    }
  }
  pcVar18 = (char *)dcgettext(0,pcVar18,5);
  printf(pcVar18);
  if (do_section_details == 0) {
    uVar25 = (filedata->file_header).e_shnum;
    pFVar15 = (Filedata *)filedata->section_headers;
    if (uVar25 != 0) {
LAB_0012ae50:
      uVar21 = 0;
LAB_0012b043:
      do {
        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);
        if (uVar20 < 0x11) {
          if (uVar20 < 0xe) {
            if (uVar20 < 6) {
              if (uVar20 < 4) {
                if (uVar20 == 2) goto LAB_0012b074;
              }
              else {
LAB_0012bb47:
                uVar26 = (uint)(pFVar15->file_header).e_entry;
                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||
                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&
                    (uVar25 != 0xb)))) {
                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";
                  goto LAB_0012b0a7;
                }
              }
            }
            else {
              if (uVar20 == 9) goto LAB_0012bb47;
              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;
            }
            goto joined_r0x0012ae86;
          }
          uVar26 = (uint)(pFVar15->file_header).e_entry;
          if (uVar26 != 0) {
            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";
            goto LAB_0012b0a7;
          }
LAB_0012b0ca:
          uVar12 = 1L << ((byte)uVar20 & 0x3f);
          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;
          if ((uVar12 & 0x5c060) == 0) {
            if ((uVar12 & 0x210) == 0) {
              if (uVar20 == 8) goto LAB_0012aef0;
              pFVar17 = pFVar15->handle;
              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;
              goto LAB_0012ae98;
            }
            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);
            if (uVar25 == 0) {
              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;
              pcVar18 = filedata->string_table;
              if (pcVar18 == (char *)0x0) {
                uVar29 = 0;
                uVar31 = 1;
                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);
LAB_0012c57f:
                lVar19 = 9;
                pbVar22 = (byte *)".rel.dyn";
                do {
                  if (lVar19 == 0) break;
                  lVar19 = lVar19 + -1;
                  uVar29 = *pbVar11 < *pbVar22;
                  uVar31 = *pbVar11 == *pbVar22;
                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                } while ((bool)uVar31);
                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;
                pcVar18 = filedata->string_table;
                if (pcVar18 == (char *)0x0) {
                  uVar29 = 0;
                  uVar31 = 1;
                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);
                }
                else {
                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;
                  if (uVar12 < filedata->string_table_length) {
                    uVar29 = CARRY8((ulong)pcVar18,uVar12);
                    pbVar11 = (byte *)(pcVar18 + uVar12);
                    uVar31 = pbVar11 == (byte *)0x0;
                  }
                  else {
                    uVar29 = 0;
                    uVar31 = 1;
                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);
                  }
                }
              }
              else {
                uVar12 = (ulong)*(uint *)&pFVar15->file_name;
                if (filedata->string_table_length <= uVar12) {
                  uVar29 = 0;
                  uVar31 = 1;
                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);
                  goto LAB_0012c57f;
                }
                bVar27 = CARRY8((ulong)pcVar18,uVar12);
                pbVar11 = (byte *)(pcVar18 + uVar12);
                bVar30 = pbVar11 == (byte *)0x0;
                lVar19 = 9;
                pbVar22 = pbVar11;
                pbVar24 = (byte *)".rel.dyn";
                do {
                  if (lVar19 == 0) break;
                  lVar19 = lVar19 + -1;
                  bVar27 = *pbVar22 < *pbVar24;
                  bVar30 = *pbVar22 == *pbVar24;
                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;
                } while (bVar30);
                uVar29 = 0;
                uVar31 = (!bVar27 && !bVar30) == bVar27;
                if ((bool)uVar31) goto LAB_0012aec8;
              }
              lVar19 = 10;
              pbVar22 = (byte *)".rela.dyn";
              do {
                if (lVar19 == 0) break;
                lVar19 = lVar19 + -1;
                uVar29 = *pbVar11 < *pbVar22;
                uVar31 = *pbVar11 == *pbVar22;
                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;
                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;
              } while ((bool)uVar31);
              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;
              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);
            }
            else if (uVar25 < (filedata->file_header).e_shnum) {
              uVar20 = filedata->section_headers[uVar25].sh_type;
              bVar7 = 1;
              if (uVar20 < 0xf) {
                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;
              }
              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;
            }
            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";
          }
          else {
LAB_0012bf87:
            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);
            if (uVar25 == 0) goto LAB_0012aec8;
            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";
          }
          pcVar18 = (char *)dcgettext(0,pcVar18,5);
          warn(pcVar18,uVar21,(ulong)uVar25);
          goto LAB_0012aec8;
        }
        if (uVar20 == 0x6ffffff7) {
LAB_0012b074:
          uVar26 = (uint)(pFVar15->file_header).e_entry;
          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||
             (filedata->section_headers[uVar26].sh_type != 3)) {
            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";
LAB_0012b0a7:
            pcVar18 = (char *)dcgettext(0,pcVar18,5);
            warn(pcVar18,uVar21,(ulong)uVar26);
            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);
          }
        }
        else if (uVar20 < 0x6ffffff8) {
          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;
        }
        else if (0x6ffffffc < uVar20) {
          if (uVar20 < 0x6fffffff) goto LAB_0012b074;
          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;
        }
joined_r0x0012ae86:
        if (uVar20 < 0x13) goto LAB_0012b0ca;
        pFVar17 = pFVar15->handle;
        if (((ulong)pFVar17 & 0x40) == 0) {
          if (uVar20 < 0x60000000) {
LAB_0012bf7c:
            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;
            goto LAB_0012aec8;
          }
        }
        else {
LAB_0012ae98:
          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);
          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {
            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)
            ;
            warn(pcVar18,uVar21);
          }
LAB_0012aec8:
          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&
              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&
             (iVar9 != 8)) {
            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);
            warn(pcVar18,uVar21);
          }
        }
LAB_0012aef0:
        printf("  [%2u] ",uVar21);
        if (do_section_details == 0) {
          if (filedata->string_table == (char *)0x0) {
            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);
          }
          else {
            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;
            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {
              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);
            }
          }
          print_symbol(L'\xffffffef',pcVar18);
        }
        else {
          pcVar18 = printable_section_name
                              ((Filedata *)&filedata->string_table,
                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);
          printf("%s\n      ",pcVar18);
        }
        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));
        __format = " %-15.15s ";
        if (do_wide != 0) {
          __format = " %-15s ";
        }
        printf(__format,pcVar18);
        if (is_32bit_elf == 0) {
          if (do_wide == 0) {
            if (do_section_details == 0) {
              putc(0x20,stdout);
              print_vma(pFVar15->file_size,LONG_HEX);
              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);
              printf("\n       ");
              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);
              printf("  ");
              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);
              pcVar18 = get_elf_section_flags
                                  ((Filedata *)((filedata->file_header).e_ident + 7),
                                   (bfd_vma)&(filedata->file_header).e_machine,
                                   (Filedata *)pFVar15->handle);
              printf(" %3s ",pcVar18);
              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,
                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
            else {
              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));
              printf("       %-15.15s  ",pcVar18);
              print_vma(pFVar15->file_size,LONG_HEX);
              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);
              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);
              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);
              putc(0x20,stdout);
              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);
              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
          }
          else {
            print_vma(pFVar15->file_size,LONG_HEX);
            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);
            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));
            printf(" %2.2lx",(pFVar15->file_header).e_shoff);
            if (do_section_details == 0) {
              pcVar18 = get_elf_section_flags
                                  ((Filedata *)((filedata->file_header).e_ident + 7),
                                   (bfd_vma)&(filedata->file_header).e_machine,
                                   (Filedata *)pFVar15->handle);
              printf(" %3s ",pcVar18);
            }
            else {
              fwrite(&DAT_0016a396,1,2,stdout);
            }
            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,
                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));
            printf("%2lu\n",(pFVar15->file_header).e_phoff);
          }
        }
        else {
          print_vma(pFVar15->file_size,LONG_HEX);
          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,
                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)
          ;
          if (do_section_details == 0) {
            pcVar18 = get_elf_section_flags
                                ((Filedata *)((filedata->file_header).e_ident + 7),
                                 (bfd_vma)&(filedata->file_header).e_machine,
                                 (Filedata *)pFVar15->handle);
            printf(" %3s ",pcVar18);
          }
          else {
            fwrite(&DAT_0016a396,1,2,stdout);
          }
          uVar25 = (uint)(pFVar15->file_header).e_entry;
          if (uVar25 < (filedata->file_header).e_shnum) {
            if (do_section_details == 0) {
              printf("%2u %3u %2lu\n",(ulong)uVar25,
                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
            else {
              printf("%2u ");
              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
          }
          else {
            uVar8 = (filedata->file_header).e_machine;
            if (uVar8 == 0x12) {
LAB_0012c0c0:
              if (uVar25 == 0xff00) {
                pcVar18 = "BEFORE";
              }
              else {
                if (uVar25 != 0xff01) goto LAB_0012c012;
                pcVar18 = "AFTER";
              }
              if (do_section_details == 0) goto LAB_0012c248;
              printf("<%s> ",pcVar18);
              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
            else {
              if (0x12 < uVar8) {
                if (uVar8 != 0x3e) {
                  if (0x3e < uVar8) {
                    uVar8 = uVar8 - 0xb4;
                    goto joined_r0x0012c138;
                  }
                  if (uVar8 != 0x2b) goto LAB_0012c012;
                }
                goto LAB_0012c0c0;
              }
              if (uVar8 == 6) goto LAB_0012c0c0;
              if (uVar8 < 7) {
                uVar8 = uVar8 - 2;
joined_r0x0012c138:
                if (uVar8 < 2) goto LAB_0012c0c0;
              }
              else if (uVar8 == 0xb) goto LAB_0012c0c0;
LAB_0012c012:
              pcVar18 = "";
              if (do_section_details == 0) {
LAB_0012c248:
                printf("%2u %3u %2lu\n",(ulong)uVar25,
                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),
                       (pFVar15->file_header).e_phoff);
              }
              else {
                pcVar18 = "";
                printf("%2u ");
                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),
                       (pFVar15->file_header).e_phoff);
              }
            }
            if (*pcVar18 == '\0') {
              bVar1 = (pFVar15->file_header).e_entry;
              pcVar18 = (char *)dcgettext(0,
                                          "section %u: sh_link value of %u is larger than the number of sections\n"
                                          ,5);
              warn(pcVar18,uVar21,(ulong)(uint)bVar1);
            }
          }
        }
        if (do_section_details == 0) {
LAB_0012b030:
          uVar25 = (filedata->file_header).e_shnum;
          uVar20 = (int)uVar21 + 1;
          uVar21 = (ulong)uVar20;
          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;
          if (uVar25 <= uVar20) break;
          goto LAB_0012b043;
        }
        pcVar18 = get_elf_section_flags
                            ((Filedata *)((filedata->file_header).e_ident + 7),
                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle
                            );
        printf("       %s\n",pcVar18);
        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;
        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);
        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,
                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,
                           filedata_1);
        if (pvVar16 == (void *)0x0) goto LAB_0012b030;
        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);
        uVar6 = buf._0_4_;
        if (buf._0_4_ == 1) {
          printf("       ZLIB, ");
        }
        else {
          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);
          printf(pcVar18,(ulong)(uint)uVar6);
        }
        uVar20 = (int)uVar21 + 1;
        uVar21 = (ulong)uVar20;
        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;
        print_vma(buf._8_8_,LONG_HEX);
        printf(", %lu\n",buf._16_8_);
        uVar25 = (filedata->file_header).e_shnum;
      } while (uVar20 < uVar25);
      goto LAB_0012bca8;
    }
  }
  else {
    pcVar18 = (char *)dcgettext(0,"       Flags\n",5);
    printf(pcVar18);
    uVar25 = (filedata->file_header).e_shnum;
    pFVar15 = (Filedata *)filedata->section_headers;
    if (uVar25 != 0) goto LAB_0012ae50;
LAB_0012bca8:
    if (do_section_details != 0) {
      return 1;
    }
  }
  pcVar18 = (char *)dcgettext(0,
                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "
                              ,5);
  printf(pcVar18);
  uVar8 = (filedata->file_header).e_machine;
  if (((ushort)(uVar8 - 0xb4) < 2) || (uVar8 == 0x3e)) {
    pcVar18 = "l (large), ";
  }
  else {
    pcVar18 = "y (purecode), ";
    if (uVar8 != 0x28) {
      if (uVar8 != 0x14) goto LAB_0012bd12;
      pcVar18 = "v (VLE), ";
    }
  }
  pcVar18 = (char *)dcgettext(0,pcVar18,5);
  printf(pcVar18);
LAB_0012bd12:
  puts("p (processor specific)");
  return 1;
}



undefined8 FUN_0012ac00(long param_1)

{
  short sVar1;
  int iVar2;
  int iVar3;
  int iVar4;
  byte bVar5;
  ushort uVar6;
  int iVar7;
  int iVar8;
  byte *pbVar9;
  ulong uVar10;
  undefined8 *puVar11;
  undefined8 uVar12;
  undefined8 uVar13;
  char *pcVar14;
  ulong uVar15;
  uint uVar16;
  ulong uVar17;
  byte *pbVar18;
  undefined4 uVar19;
  long lVar20;
  byte *pbVar21;
  uint uVar22;
  uint uVar23;
  uint *puVar24;
  bool bVar25;
  bool bVar26;
  undefined1 uVar27;
  bool bVar28;
  undefined1 uVar29;
  byte bVar30;
  undefined1 local_88 [32];
  uint local_68 [2];
  undefined8 local_60;
  undefined8 local_58;
  
  bVar30 = 0;
  uVar22 = *(uint *)(param_1 + 100);
  *(undefined8 *)(param_1 + 0x70) = 0;
  if (uVar22 == 0) {
    if (*(long *)(param_1 + 0x38) != 0) {
      uVar12 = dcgettext(0,
                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"
                         ,5);
      warn(uVar12);
      return 0;
    }
    if (DAT_00193494 == 0) {
      return 1;
    }
    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);
    printf(pcVar14);
    return 1;
  }
  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {
    uVar12 = *(undefined8 *)(param_1 + 0x38);
    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",
                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,
                                 5);
    printf(pcVar14,(ulong)uVar22,uVar12);
  }
  if (DAT_0019345c == 0) {
    iVar7 = FUN_00115940(param_1,0);
  }
  else {
    iVar7 = FUN_00115650();
  }
  if (iVar7 == 0) {
    return 0;
  }
  uVar22 = *(uint *)(param_1 + 0x68);
  puVar24 = *(uint **)(param_1 + 0x70);
  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&
     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {
    uVar12 = dcgettext(0,"string table",5);
    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,
                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,
                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);
    uVar12 = 0;
    *(long *)(param_1 + 0x80) = lVar20;
    if (lVar20 != 0) {
      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);
    }
    *(undefined8 *)(param_1 + 0x88) = uVar12;
    puVar24 = *(uint **)(param_1 + 0x70);
  }
  DAT_00194678 = 0;
  DAT_00194690 = 0;
  DAT_00194670 = 0;
  DAT_001934b0 = (undefined8 *)0x0;
  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;
  uVar6 = *(ushort *)(param_1 + 0x52);
  if (uVar6 < 0x30) {
    if (uVar6 < 0x2e) {
      if (((uVar6 == 8) || (uVar6 == 10)) &&
         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {
        if (puVar24 != (uint *)0x0) {
          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");
          puVar24 = *(uint **)(param_1 + 0x70);
          if (lVar20 != 0) goto LAB_0012ad0a;
        }
        DAT_00196f54 = 8;
      }
    }
    else {
      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;
      if (uVar22 != 0x830000) {
        if (uVar22 < 0x830001) {
          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {
LAB_0012c4d0:
            DAT_00196f54 = 4;
            goto LAB_0012ad0a;
          }
          if (uVar22 != 0x800000) goto LAB_0012ad0a;
        }
        else {
          if (uVar22 == 0x850000) goto LAB_0012c4d0;
          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;
        }
      }
LAB_0012b791:
      DAT_00196f54 = 2;
    }
  }
  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&
          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;
LAB_0012ad0a:
  if (*(int *)(param_1 + 100) == 0) {
    if (DAT_00193494 == 0) {
      return 1;
    }
LAB_0012c296:
    pcVar14 = "\nSection Header:\n";
  }
  else {
    uVar22 = 0;
    do {
      if (puVar24 == (uint *)0x0) {
        pbVar9 = (byte *)dcgettext(0,"<none>",5);
      }
      else if (*(long *)(param_1 + 0x80) == 0) {
        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);
      }
      else {
        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);
        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {
          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);
        }
      }
      iVar4 = DAT_00196f7c;
      iVar3 = DAT_00196f48;
      iVar2 = DAT_00196f3c;
      iVar7 = DAT_00196f28;
      uVar16 = puVar24[1];
      if (uVar16 == 0xb) {
        pcVar14 = "File contains multiple dynamic symbol tables\n";
        if (DAT_00194678 == 0) {
          if (DAT_0019345c == 0) {
            if (*(long *)(puVar24 + 0xe) != 0x18) {
              uVar19 = 0x18;
              uVar12 = 0x18;
              goto LAB_0012b923;
            }
LAB_0012b7d2:
            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);
          }
          else {
            if (*(long *)(puVar24 + 0xe) != 0x10) {
              uVar19 = 0x10;
              uVar12 = 0x10;
LAB_0012b923:
              sprintf((char *)local_68,"%016lx");
              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
              error(uVar13,uVar22,local_68);
              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);
              error(uVar13,uVar19);
              iVar7 = DAT_0019345c;
              *(undefined8 *)(puVar24 + 0xe) = uVar12;
              if (iVar7 == 0) goto LAB_0012b7d2;
            }
            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);
          }
        }
        else {
LAB_0012b69a:
          dcgettext(0,pcVar14,5);
          error();
        }
      }
      else {
        bVar25 = uVar16 < 3;
        bVar28 = uVar16 == 3;
        if (bVar28) {
          lVar20 = 8;
          pbVar18 = pbVar9;
          pbVar21 = (byte *)".dynstr";
          do {
            if (lVar20 == 0) break;
            lVar20 = lVar20 + -1;
            bVar25 = *pbVar18 < *pbVar21;
            bVar28 = *pbVar18 == *pbVar21;
            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
          } while (bVar28);
          if ((!bVar25 && !bVar28) == bVar25) {
            if (DAT_00194690 != 0) {
              pcVar14 = "File contains multiple dynamic string tables\n";
              goto LAB_0012b69a;
            }
            uVar12 = dcgettext(0,"dynamic strings",5);
            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,
                                        *(undefined8 *)(puVar24 + 8),uVar12);
            DAT_00194688 = 0;
            if (DAT_00194690 != 0) {
              DAT_00194688 = *(undefined8 *)(puVar24 + 8);
            }
          }
          else {
LAB_0012b1ff:
            bVar25 = false;
            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&
                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&
                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&
                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&
                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);
            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&
                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&
                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&
                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&
                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;
            lVar20 = 7;
            pbVar18 = pbVar9;
            pbVar21 = (byte *)".debug_";
            do {
              if (lVar20 == 0) break;
              lVar20 = lVar20 + -1;
              bVar25 = *pbVar18 < *pbVar21;
              bVar28 = *pbVar18 == *pbVar21;
              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
            } while (bVar28);
            bVar26 = false;
            bVar25 = (!bVar25 && !bVar28) == bVar25;
            if (bVar25) {
LAB_0012b3f7:
              pbVar18 = pbVar9 + 7;
              if (pbVar9[1] == 0x7a) {
                pbVar18 = pbVar9 + 8;
              }
              if (DAT_0019346c == 0) {
                bVar28 = false;
                bVar25 = DAT_00196f2c == 0;
                if (bVar25) {
LAB_0012b446:
                  bVar25 = false;
                  bVar28 = DAT_00196f40 == 0;
                  if (!bVar28) {
                    lVar20 = 6;
                    pbVar9 = pbVar18;
                    pbVar21 = (byte *)0x1826c0;
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar25 = *pbVar9 < *pbVar21;
                      bVar28 = *pbVar9 == *pbVar21;
                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar28);
                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                  }
                  bVar25 = false;
                  bVar28 = DAT_00196f5c == 0;
                  if (bVar28) {
LAB_0012b490:
                    bVar25 = false;
                    bVar28 = DAT_00196f38 == 0;
                    if (bVar28) {
                      bVar25 = false;
                      bVar28 = DAT_00196f68 == 0;
                      if (bVar28) {
LAB_0012b4dd:
                        bVar25 = false;
                        bVar28 = DAT_00196f30 == 0;
                        if (!bVar28) {
                          lVar20 = 7;
                          pbVar9 = pbVar18;
                          pbVar21 = (byte *)0x1826ce;
                          do {
                            if (lVar20 == 0) break;
                            lVar20 = lVar20 + -1;
                            bVar25 = *pbVar9 < *pbVar21;
                            bVar28 = *pbVar9 == *pbVar21;
                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                          } while (bVar28);
                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                        }
                        bVar25 = false;
                        bVar28 = DAT_00196f60 == 0;
                        if (bVar28) {
LAB_0012b547:
                          bVar25 = false;
                          bVar28 = DAT_00196f34 == 0;
                          if (!bVar28) {
                            lVar20 = 5;
                            pbVar9 = pbVar18;
                            pbVar21 = (byte *)0x18246b;
                            do {
                              if (lVar20 == 0) break;
                              lVar20 = lVar20 + -1;
                              bVar25 = *pbVar9 < *pbVar21;
                              bVar28 = *pbVar9 == *pbVar21;
                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                            } while (bVar28);
                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                          }
                          bVar25 = false;
                          bVar28 = DAT_00196f6c == 0;
                          if (!bVar28) {
                            lVar20 = 7;
                            pbVar9 = pbVar18;
                            pbVar21 = (byte *)0x1824f6;
                            do {
                              if (lVar20 == 0) break;
                              lVar20 = lVar20 + -1;
                              bVar25 = *pbVar9 < *pbVar21;
                              bVar28 = *pbVar9 == *pbVar21;
                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                            } while (bVar28);
                            if (((!bVar25 && !bVar28) == bVar25) ||
                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))
                            goto LAB_0012b3c0;
                          }
                          if (((((iVar7 == 0) ||
                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&
                               ((iVar2 == 0 ||
                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&
                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&
                              ((iVar3 == 0 ||
                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&
                             ((iVar4 == 0 ||
                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&
                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))
                          goto LAB_0012ad90;
                        }
                        else {
                          lVar20 = 6;
                          pbVar9 = pbVar18;
                          pbVar21 = (byte *)0x185a13;
                          do {
                            if (lVar20 == 0) break;
                            lVar20 = lVar20 + -1;
                            bVar25 = *pbVar9 < *pbVar21;
                            bVar28 = *pbVar9 == *pbVar21;
                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                          } while (bVar28);
                          bVar26 = false;
                          bVar25 = (!bVar25 && !bVar28) == bVar25;
                          if (!bVar25) {
                            lVar20 = 8;
                            pbVar9 = pbVar18;
                            pbVar21 = (byte *)0x182607;
                            do {
                              if (lVar20 == 0) break;
                              lVar20 = lVar20 + -1;
                              bVar26 = *pbVar9 < *pbVar21;
                              bVar25 = *pbVar9 == *pbVar21;
                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                            } while (bVar25);
                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;
                          }
                        }
                      }
                      else {
                        lVar20 = 8;
                        pbVar9 = pbVar18;
                        pbVar21 = (byte *)0x1862bf;
                        do {
                          if (lVar20 == 0) break;
                          lVar20 = lVar20 + -1;
                          bVar25 = *pbVar9 < *pbVar21;
                          bVar28 = *pbVar9 == *pbVar21;
                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                        } while (bVar28);
                        bVar25 = (!bVar25 && !bVar28) == bVar25;
joined_r0x0012c500:
                        if (!bVar25) {
                          pcVar14 = ".debug_gnu_pubtypes";
LAB_0012b4cb:
                          bVar28 = false;
                          lVar20 = 0xc;
                          pbVar9 = pbVar18;
                          pbVar21 = (byte *)(pcVar14 + 7);
                          do {
                            if (lVar20 == 0) break;
                            lVar20 = lVar20 + -1;
                            bVar28 = *pbVar9 < *pbVar21;
                            bVar25 = *pbVar9 == *pbVar21;
                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                          } while (bVar25);
                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;
                        }
                      }
                    }
                    else {
                      lVar20 = 8;
                      pbVar9 = pbVar18;
                      pbVar21 = (byte *)0x1862ac;
                      do {
                        if (lVar20 == 0) break;
                        lVar20 = lVar20 + -1;
                        bVar25 = *pbVar9 < *pbVar21;
                        bVar28 = *pbVar9 == *pbVar21;
                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                      } while (bVar28);
                      if ((!bVar25 && !bVar28) != bVar25) {
                        pcVar14 = ".debug_gnu_pubnames";
                        bVar28 = false;
                        bVar25 = DAT_00196f68 == 0;
                        if (bVar25) goto LAB_0012b4cb;
                        lVar20 = 8;
                        pbVar9 = pbVar18;
                        pbVar21 = (byte *)0x1862bf;
                        do {
                          if (lVar20 == 0) break;
                          lVar20 = lVar20 + -1;
                          bVar28 = *pbVar9 < *pbVar21;
                          bVar25 = *pbVar9 == *pbVar21;
                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                        } while (bVar25);
                        bVar26 = false;
                        bVar25 = (!bVar28 && !bVar25) == bVar28;
                        if (!bVar25) {
                          lVar20 = 0xc;
                          pbVar9 = pbVar18;
                          pbVar21 = (byte *)0x1824cd;
                          do {
                            if (lVar20 == 0) break;
                            lVar20 = lVar20 + -1;
                            bVar26 = *pbVar9 < *pbVar21;
                            bVar25 = *pbVar9 == *pbVar21;
                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                          } while (bVar25);
                          bVar25 = (!bVar26 && !bVar25) == bVar26;
                          goto joined_r0x0012c500;
                        }
                      }
                    }
                  }
                  else {
                    lVar20 = 5;
                    pbVar9 = pbVar18;
                    pbVar21 = (byte *)0x182493;
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar25 = *pbVar9 < *pbVar21;
                      bVar28 = *pbVar9 == *pbVar21;
                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar28);
                    bVar26 = false;
                    bVar25 = (!bVar25 && !bVar28) == bVar25;
                    if (!bVar25) {
                      lVar20 = 5;
                      pbVar9 = pbVar18;
                      pbVar21 = (byte *)0x16ac78;
                      do {
                        if (lVar20 == 0) break;
                        lVar20 = lVar20 + -1;
                        bVar26 = *pbVar9 < *pbVar21;
                        bVar25 = *pbVar9 == *pbVar21;
                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                      } while (bVar25);
                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;
                    }
                  }
                }
                else {
                  lVar20 = 4;
                  pbVar9 = pbVar18;
                  pbVar21 = (byte *)0x1663a6;
                  do {
                    if (lVar20 == 0) break;
                    lVar20 = lVar20 + -1;
                    bVar28 = *pbVar9 < *pbVar21;
                    bVar25 = *pbVar9 == *pbVar21;
                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                  } while (bVar25);
                  bVar26 = false;
                  bVar25 = (!bVar28 && !bVar25) == bVar28;
                  if (!bVar25) {
                    lVar20 = 5;
                    pbVar9 = pbVar18;
                    pbVar21 = (byte *)0x1857df;
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar26 = *pbVar9 < *pbVar21;
                      bVar25 = *pbVar9 == *pbVar21;
                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar25);
                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;
                  }
                }
              }
            }
            else {
              lVar20 = 8;
              pbVar18 = pbVar9;
              pbVar21 = (byte *)".zdebug_";
              do {
                if (lVar20 == 0) break;
                lVar20 = lVar20 + -1;
                bVar26 = *pbVar18 < *pbVar21;
                bVar25 = *pbVar18 == *pbVar21;
                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
              } while (bVar25);
              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;
              bVar25 = false;
              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;
              if (bVar28) {
LAB_0012b2b0:
                bVar25 = false;
                bVar28 = DAT_00196f34 == 0;
                if (!bVar28) {
                  lVar20 = 10;
                  pbVar18 = pbVar9;
                  pbVar21 = (byte *)".eh_frame";
                  do {
                    if (lVar20 == 0) break;
                    lVar20 = lVar20 + -1;
                    bVar25 = *pbVar18 < *pbVar21;
                    bVar28 = *pbVar18 == *pbVar21;
                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                  } while (bVar28);
                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                }
                bVar25 = false;
                bVar28 = DAT_00196f78 == 0;
                if (bVar28) {
LAB_0012b31e:
                  bVar25 = false;
                  bVar28 = DAT_0019346c == 0;
                  if (bVar28) {
                    bVar25 = false;
                    bVar28 = DAT_00196f64 == 0;
                    if (!bVar28) {
                      lVar20 = 7;
                      pbVar18 = pbVar9;
                      pbVar21 = (byte *)".trace_";
                      do {
                        if (lVar20 == 0) break;
                        lVar20 = lVar20 + -1;
                        bVar25 = *pbVar18 < *pbVar21;
                        bVar28 = *pbVar18 == *pbVar21;
                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                      } while (bVar28);
                      if ((!bVar25 && !bVar28) == bVar25) {
                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;
                        bVar28 = pbVar9 + 7 == (byte *)0x0;
                        lVar20 = 5;
                        pbVar18 = pbVar9 + 7;
                        pbVar21 = (byte *)0x1663a6;
                        do {
                          if (lVar20 == 0) break;
                          lVar20 = lVar20 + -1;
                          bVar25 = *pbVar18 < *pbVar21;
                          bVar28 = *pbVar18 == *pbVar21;
                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                        } while (bVar28);
                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;
                        goto LAB_0012b3c0;
                      }
LAB_0012c5d2:
                      bVar25 = DAT_00196f74 == 0;
                      if (bVar25) goto LAB_0012ad90;
                      goto LAB_0012c536;
                    }
                    bVar25 = false;
                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;
                    if (bVar28) goto LAB_0012c5d2;
                    lVar20 = 7;
                    pbVar18 = pbVar9;
                    pbVar21 = (byte *)".trace_";
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar25 = *pbVar18 < *pbVar21;
                      bVar28 = *pbVar18 == *pbVar21;
                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar28);
                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;
LAB_0012b36f:
                    bVar25 = false;
                    bVar28 = DAT_00196f58 == 0;
                    if (!bVar28) {
                      lVar20 = 7;
                      pbVar18 = pbVar9 + 7;
                      pbVar21 = (byte *)0x1826c0;
                      do {
                        if (lVar20 == 0) break;
                        lVar20 = lVar20 + -1;
                        bVar25 = *pbVar18 < *pbVar21;
                        bVar28 = *pbVar18 == *pbVar21;
                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                      } while (bVar28);
                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                    }
                    bVar26 = false;
                    bVar25 = DAT_00196f4c == 0;
                    if (bVar25) goto LAB_0012ad90;
                    lVar20 = 8;
                    pbVar9 = pbVar9 + 7;
                    pcVar14 = (char *)(byte *)0x1826ce;
                  }
                  else {
                    lVar20 = 7;
                    pbVar18 = pbVar9;
                    pbVar21 = (byte *)".trace_";
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar25 = *pbVar18 < *pbVar21;
                      bVar28 = *pbVar18 == *pbVar21;
                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar28);
                    bVar25 = (!bVar25 && !bVar28) == bVar25;
                    if (bVar25) goto LAB_0012b3c0;
LAB_0012c536:
                    bVar28 = false;
                    lVar20 = 0xe;
                    pbVar18 = pbVar9;
                    pbVar21 = (byte *)".gnu_debuglink";
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar28 = *pbVar18 < *pbVar21;
                      bVar25 = *pbVar18 == *pbVar21;
                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar25);
                    bVar26 = false;
                    bVar25 = (!bVar28 && !bVar25) == bVar28;
                    if (bVar25) goto LAB_0012b3c0;
                    lVar20 = 0x11;
                    pcVar14 = ".gnu_debugaltlink";
                  }
                  do {
                    if (lVar20 == 0) break;
                    lVar20 = lVar20 + -1;
                    bVar26 = *pbVar9 < (byte)*pcVar14;
                    bVar25 = *pbVar9 == *pcVar14;
                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);
                  } while (bVar25);
                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;
                }
                else {
                  lVar20 = 0xb;
                  pbVar18 = pbVar9;
                  pbVar21 = (byte *)".gdb_index";
                  do {
                    if (lVar20 == 0) break;
                    lVar20 = lVar20 + -1;
                    bVar25 = *pbVar18 < *pbVar21;
                    bVar28 = *pbVar18 == *pbVar21;
                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                  } while (bVar28);
                  bVar26 = false;
                  bVar25 = (!bVar25 && !bVar28) == bVar25;
                  if (!bVar25) {
                    lVar20 = 0xd;
                    pbVar18 = pbVar9;
                    pbVar21 = (byte *)".debug_names";
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar26 = *pbVar18 < *pbVar21;
                      bVar25 = *pbVar18 == *pbVar21;
                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar25);
                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;
                  }
                }
              }
              else {
                lVar20 = 0x11;
                pbVar18 = pbVar9;
                pbVar21 = (byte *)".gnu.linkonce.wi.";
                do {
                  if (lVar20 == 0) break;
                  lVar20 = lVar20 + -1;
                  bVar25 = *pbVar18 < *pbVar21;
                  bVar28 = *pbVar18 == *pbVar21;
                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                } while (bVar28);
                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;
              }
            }
LAB_0012b3c0:
            FUN_00111440(param_1,uVar22,4);
          }
        }
        else if (uVar16 == 0x12) {
          puVar11 = (undefined8 *)FUN_001594b0();
          *puVar11 = puVar24;
          puVar11[1] = DAT_001934b0;
          DAT_001934b0 = puVar11;
        }
        else if (uVar16 == 2) {
          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;
          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;
        }
        else if (uVar16 == 0x11) {
          if (*(long *)(puVar24 + 0xe) != 4) {
            sprintf((char *)local_68,"%016lx");
            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
            error(uVar12,uVar22,local_68);
            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);
            error(uVar12,4);
            puVar24[0xe] = 4;
            puVar24[0xf] = 0;
          }
        }
        else if (uVar16 == 9) {
          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;
          if (*(long *)(puVar24 + 0xe) != lVar20) {
LAB_0012b6ee:
            sprintf((char *)local_68,"%016lx");
            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
            error(uVar12,uVar22,local_68);
            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);
            error(uVar12,lVar20);
            *(long *)(puVar24 + 0xe) = lVar20;
          }
        }
        else {
          if (uVar16 != 4) goto LAB_0012b1ff;
          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;
          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;
        }
      }
LAB_0012ad90:
      uVar22 = uVar22 + 1;
      puVar24 = puVar24 + 0x14;
    } while (uVar22 < *(uint *)(param_1 + 100));
    if (DAT_00193494 == 0) {
      return 1;
    }
    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;
    pcVar14 = "\nSection Headers:\n";
  }
  pcVar14 = (char *)dcgettext(0,pcVar14,5);
  printf(pcVar14);
  if (DAT_0019345c == 0) {
    if (DAT_00196f50 == 0) {
      if (DAT_0019348c == 0) {
        pcVar14 = (char *)dcgettext(0,
                                    "  [Nr] Name              Type             Address           Offset\n"
                                    ,5);
        printf(pcVar14);
        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";
      }
      else {
        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);
        printf(pcVar14);
        pcVar14 = (char *)dcgettext(0,
                                    "       Type              Address          Offset            Link\n"
                                    ,5);
        printf(pcVar14);
        pcVar14 = "       Size              EntSize          Info              Align\n";
      }
    }
    else {
      pcVar14 = 
      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";
      if (DAT_0019348c != 0) {
        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);
        printf(pcVar14);
        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";
      }
    }
  }
  else {
    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";
    if (DAT_0019348c != 0) {
      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);
      printf(pcVar14);
      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";
    }
  }
  pcVar14 = (char *)dcgettext(0,pcVar14,5);
  printf(pcVar14);
  if (DAT_0019348c == 0) {
    uVar22 = *(uint *)(param_1 + 100);
    puVar24 = *(uint **)(param_1 + 0x70);
    if (uVar22 != 0) {
LAB_0012ae50:
      uVar17 = 0;
LAB_0012b043:
      do {
        uVar16 = puVar24[1];
        if (uVar16 < 0x11) {
          if (uVar16 < 0xe) {
            if (uVar16 < 6) {
              if (uVar16 < 4) {
                if (uVar16 == 2) goto LAB_0012b074;
              }
              else {
LAB_0012bb47:
                uVar23 = puVar24[10];
                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||
                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),
                    iVar7 != 2 && (iVar7 != 0xb)))) {
                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";
                  goto LAB_0012b0a7;
                }
              }
            }
            else {
              if (uVar16 == 9) goto LAB_0012bb47;
              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;
            }
            goto joined_r0x0012ae86;
          }
          uVar23 = puVar24[10];
          if (uVar23 != 0) {
            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";
            goto LAB_0012b0a7;
          }
LAB_0012b0ca:
          uVar10 = 1L << ((byte)uVar16 & 0x3f);
          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;
          if ((uVar10 & 0x5c060) == 0) {
            if ((uVar10 & 0x210) == 0) {
              if (uVar16 == 8) goto LAB_0012aef0;
              uVar10 = *(ulong *)(puVar24 + 2);
              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;
              goto LAB_0012ae98;
            }
            uVar22 = puVar24[0xb];
            if (uVar22 == 0) {
              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;
              uVar10 = *(ulong *)(param_1 + 0x80);
              if (uVar10 == 0) {
                uVar27 = 0;
                uVar29 = 1;
                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);
LAB_0012c57f:
                lVar20 = 9;
                pbVar18 = (byte *)".rel.dyn";
                do {
                  if (lVar20 == 0) break;
                  lVar20 = lVar20 + -1;
                  uVar27 = *pbVar9 < *pbVar18;
                  uVar29 = *pbVar9 == *pbVar18;
                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                } while ((bool)uVar29);
                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;
                uVar10 = *(ulong *)(param_1 + 0x80);
                if (uVar10 == 0) {
                  uVar27 = 0;
                  uVar29 = 1;
                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);
                }
                else {
                  uVar15 = (ulong)*puVar24;
                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {
                    uVar27 = CARRY8(uVar10,uVar15);
                    pbVar9 = (byte *)(uVar10 + uVar15);
                    uVar29 = pbVar9 == (byte *)0x0;
                  }
                  else {
                    uVar27 = 0;
                    uVar29 = 1;
                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);
                  }
                }
              }
              else {
                uVar15 = (ulong)*puVar24;
                if (*(ulong *)(param_1 + 0x88) <= uVar15) {
                  uVar27 = 0;
                  uVar29 = 1;
                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);
                  goto LAB_0012c57f;
                }
                bVar25 = CARRY8(uVar10,uVar15);
                pbVar9 = (byte *)(uVar10 + uVar15);
                bVar28 = pbVar9 == (byte *)0x0;
                lVar20 = 9;
                pbVar18 = pbVar9;
                pbVar21 = (byte *)".rel.dyn";
                do {
                  if (lVar20 == 0) break;
                  lVar20 = lVar20 + -1;
                  bVar25 = *pbVar18 < *pbVar21;
                  bVar28 = *pbVar18 == *pbVar21;
                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                } while (bVar28);
                uVar27 = 0;
                uVar29 = (!bVar25 && !bVar28) == bVar25;
                if ((bool)uVar29) goto LAB_0012aec8;
              }
              lVar20 = 10;
              pbVar18 = (byte *)".rela.dyn";
              do {
                if (lVar20 == 0) break;
                lVar20 = lVar20 + -1;
                uVar27 = *pbVar9 < *pbVar18;
                uVar29 = *pbVar9 == *pbVar18;
                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
              } while ((bool)uVar29);
              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;
              uVar22 = puVar24[0xb];
            }
            else if (uVar22 < *(uint *)(param_1 + 100)) {
              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);
              bVar5 = 1;
              if (uVar16 < 0xf) {
                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;
              }
              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;
            }
            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";
          }
          else {
LAB_0012bf87:
            uVar22 = puVar24[0xb];
            if (uVar22 == 0) goto LAB_0012aec8;
            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";
          }
          uVar12 = dcgettext(0,pcVar14,5);
          warn(uVar12,uVar17,uVar22);
          goto LAB_0012aec8;
        }
        if (uVar16 == 0x6ffffff7) {
LAB_0012b074:
          uVar23 = puVar24[10];
          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||
             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {
            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";
LAB_0012b0a7:
            uVar12 = dcgettext(0,pcVar14,5);
            warn(uVar12,uVar17,uVar23);
            uVar16 = puVar24[1];
          }
        }
        else if (uVar16 < 0x6ffffff8) {
          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;
        }
        else if (0x6ffffffc < uVar16) {
          if (uVar16 < 0x6fffffff) goto LAB_0012b074;
          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;
        }
joined_r0x0012ae86:
        if (uVar16 < 0x13) goto LAB_0012b0ca;
        uVar10 = *(ulong *)(puVar24 + 2);
        if ((uVar10 & 0x40) == 0) {
          if (uVar16 < 0x60000000) {
LAB_0012bf7c:
            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;
            goto LAB_0012aec8;
          }
        }
        else {
LAB_0012ae98:
          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {
            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);
            warn(uVar12,uVar17);
          }
LAB_0012aec8:
          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&
              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {
            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);
            warn(uVar12,uVar17);
          }
        }
LAB_0012aef0:
        printf("  [%2u] ",uVar17);
        if (DAT_0019348c == 0) {
          if (*(long *)(param_1 + 0x80) == 0) {
            lVar20 = dcgettext(0,"<no-strings>",5);
          }
          else {
            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;
            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {
              lVar20 = dcgettext(0,"<corrupt>",5);
            }
          }
          FUN_001122a0(0xffffffef,lVar20);
        }
        else {
          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);
          printf("%s\n      ",uVar12);
        }
        uVar12 = FUN_001176d0(param_1,puVar24[1]);
        pcVar14 = " %-15.15s ";
        if (DAT_00196f50 != 0) {
          pcVar14 = " %-15s ";
        }
        printf(pcVar14,uVar12);
        if (DAT_0019345c == 0) {
          if (DAT_00196f50 == 0) {
            if (DAT_0019348c == 0) {
              putc(0x20,stdout);
              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);
              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));
              printf("\n       ");
              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);
              printf("  ");
              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);
              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));
              printf(" %3s ",uVar12);
              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],
                     *(undefined8 *)(puVar24 + 0xc));
            }
            else {
              uVar12 = FUN_001176d0(param_1,puVar24[1]);
              printf("       %-15.15s  ",uVar12);
              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);
              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));
              printf("  %u\n       ",(ulong)puVar24[10]);
              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);
              putc(0x20,stdout);
              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);
              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));
            }
          }
          else {
            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);
            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));
            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));
            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));
            if (DAT_0019348c == 0) {
              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));
              printf(" %3s ",uVar12);
            }
            else {
              fwrite(&DAT_0016a396,1,2,stdout);
            }
            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);
            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));
          }
        }
        else {
          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);
          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),
                 *(undefined8 *)(puVar24 + 0xe));
          if (DAT_0019348c == 0) {
            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));
            printf(" %3s ",uVar12);
          }
          else {
            fwrite(&DAT_0016a396,1,2,stdout);
          }
          uVar22 = puVar24[10];
          if (uVar22 < *(uint *)(param_1 + 100)) {
            if (DAT_0019348c == 0) {
              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],
                     *(undefined8 *)(puVar24 + 0xc));
            }
            else {
              printf("%2u ");
              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));
            }
          }
          else {
            uVar6 = *(ushort *)(param_1 + 0x52);
            if (uVar6 == 0x12) {
LAB_0012c0c0:
              if (uVar22 == 0xff00) {
                pcVar14 = "BEFORE";
              }
              else {
                if (uVar22 != 0xff01) goto LAB_0012c012;
                pcVar14 = "AFTER";
              }
              if (DAT_0019348c == 0) goto LAB_0012c248;
              printf("<%s> ",pcVar14);
              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));
            }
            else {
              if (0x12 < uVar6) {
                if (uVar6 != 0x3e) {
                  if (0x3e < uVar6) {
                    uVar6 = uVar6 - 0xb4;
                    goto joined_r0x0012c138;
                  }
                  if (uVar6 != 0x2b) goto LAB_0012c012;
                }
                goto LAB_0012c0c0;
              }
              if (uVar6 == 6) goto LAB_0012c0c0;
              if (uVar6 < 7) {
                uVar6 = uVar6 - 2;
joined_r0x0012c138:
                if (uVar6 < 2) goto LAB_0012c0c0;
              }
              else if (uVar6 == 0xb) goto LAB_0012c0c0;
LAB_0012c012:
              pcVar14 = "";
              if (DAT_0019348c == 0) {
LAB_0012c248:
                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],
                       *(undefined8 *)(puVar24 + 0xc));
              }
              else {
                pcVar14 = "";
                printf("%2u ");
                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));
              }
            }
            if (*pcVar14 == '\0') {
              uVar22 = puVar24[10];
              uVar12 = dcgettext(0,
                                 "section %u: sh_link value of %u is larger than the number of sections\n"
                                 ,5);
              warn(uVar12,uVar17,uVar22);
            }
          }
        }
        if (DAT_0019348c == 0) {
LAB_0012b030:
          uVar22 = *(uint *)(param_1 + 100);
          uVar16 = (int)uVar17 + 1;
          uVar17 = (ulong)uVar16;
          puVar24 = puVar24 + 0x14;
          if (uVar22 <= uVar16) break;
          goto LAB_0012b043;
        }
        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));
        printf("       %s\n",uVar12);
        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;
        uVar12 = dcgettext(0,"compression header",5);
        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,
                              0x18,uVar12);
        if (lVar20 == 0) goto LAB_0012b030;
        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);
        uVar22 = local_68[0];
        if (local_68[0] == 1) {
          printf("       ZLIB, ");
        }
        else {
          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);
          printf(pcVar14,(ulong)uVar22);
        }
        uVar16 = (int)uVar17 + 1;
        uVar17 = (ulong)uVar16;
        puVar24 = puVar24 + 0x14;
        FUN_001116b0(local_60,6);
        printf(", %lu\n",local_58);
        uVar22 = *(uint *)(param_1 + 100);
      } while (uVar16 < uVar22);
      goto LAB_0012bca8;
    }
  }
  else {
    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);
    printf(pcVar14);
    uVar22 = *(uint *)(param_1 + 100);
    puVar24 = *(uint **)(param_1 + 0x70);
    if (uVar22 != 0) goto LAB_0012ae50;
LAB_0012bca8:
    if (DAT_0019348c != 0) {
      return 1;
    }
  }
  pcVar14 = (char *)dcgettext(0,
                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "
                              ,5);
  printf(pcVar14);
  sVar1 = *(short *)(param_1 + 0x52);
  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {
    pcVar14 = "l (large), ";
  }
  else {
    pcVar14 = "y (purecode), ";
    if (sVar1 != 0x28) {
      if (sVar1 != 0x14) goto LAB_0012bd12;
      pcVar14 = "v (VLE), ";
    }
  }
  pcVar14 = (char *)dcgettext(0,pcVar14,5);
  printf(pcVar14);
LAB_0012bd12:
  puts("p (processor specific)");
  return 1;
}


PUSH R15
MOV R15,RDI
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x78
MOV EBX,dword ptr [RDI + 0x64]
MOV qword ptr [RDI + 0x70],0x0
TEST EBX,EBX
JNZ 0x0012ac50
CMP qword ptr [RDI + 0x38],0x0
JNZ 0x0012b820
MOV R13D,dword ptr [0x00193494]
TEST R13D,R13D
JNZ 0x0012c1b0
MOV EAX,0x1
ADD RSP,0x78
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
MOV R12D,dword ptr [0x00193494]
TEST R12D,R12D
JZ 0x0012ac6a
MOV EBP,dword ptr [0x0019347c]
TEST EBP,EBP
JZ 0x0012baf0
MOV R11D,dword ptr [0x0019345c]
XOR ESI,ESI
MOV RDI,R15
TEST R11D,R11D
JZ 0x0012b150
CALL 0x00115650
TEST EAX,EAX
JZ 0x0012b15d
MOV EAX,dword ptr [R15 + 0x68]
MOV R14,qword ptr [R15 + 0x70]
TEST EAX,EAX
JNZ 0x0012b850
CMP dword ptr [0x0019345c],0x1
MOV qword ptr [0x00194678],0x0
MOV qword ptr [0x00194690],0x0
SBB EAX,EAX
MOV qword ptr [0x00194670],0x0
AND EAX,0x4
MOV qword ptr [0x001934b0],0x0
ADD EAX,0x4
MOV dword ptr [0x00196f54],EAX
MOVZX EAX,word ptr [R15 + 0x52]
CMP AX,0x2f
JA 0x0012b770
CMP AX,0x2e
JNC 0x0012c2b0
CMP AX,0x8
JZ 0x0012b8d0
CMP AX,0xa
JZ 0x0012b8d0
MOV R8D,dword ptr [R15 + 0x64]
TEST R8D,R8D
JZ 0x0012c288
XOR R13D,R13D
NOP word ptr [RAX + RAX*0x1]
TEST R14,R14
JZ 0x0012b6b0
MOV RAX,qword ptr [R15 + 0x80]
TEST RAX,RAX
JZ 0x0012b750
MOV EDX,dword ptr [R14]
ADD RAX,RDX
CMP RDX,qword ptr [R15 + 0x88]
JNC 0x0012b1c8
MOV EDX,dword ptr [R14 + 0x4]
CMP EDX,0xb
JZ 0x0012b170
CMP EDX,0x3
JZ 0x0012b1e0
CMP EDX,0x12
JZ 0x0012b7a0
CMP EDX,0x2
JZ 0x0012b6d0
CMP EDX,0x11
JNZ 0x0012b7f0
MOV RDX,qword ptr [R14 + 0x38]
CMP RDX,0x4
JNZ 0x0012ba00
NOP dword ptr [RAX + RAX*0x1]
MOV EAX,dword ptr [R15 + 0x64]
ADD R13D,0x1
ADD R14,0x50
CMP EAX,R13D
JA 0x0012ad20
MOV EDI,dword ptr [0x00193494]
TEST EDI,EDI
JZ 0x0012ac3b
CMP EAX,0x1
JBE 0x0012c296
MOV EDX,0x5
LEA RSI,[0x16a333]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV ESI,dword ptr [0x0019345c]
MOV EAX,dword ptr [0x0019348c]
MOV EDX,0x5
TEST ESI,ESI
JZ 0x0012c1d8
LEA RSI,[0x172108]
TEST EAX,EAX
JZ 0x0012ae21
LEA RSI,[0x16a358]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV EDX,0x5
LEA RSI,[0x1720c8]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV EAX,dword ptr [0x0019348c]
TEST EAX,EAX
JNZ 0x0012c320
MOV EAX,dword ptr [R15 + 0x64]
MOV R14,qword ptr [R15 + 0x70]
TEST EAX,EAX
JZ 0x0012bcb6
XOR EBX,EBX
LEA R12,[0x16a280]
LEA RBP,[0x16a288]
JMP 0x0012b043
CMP ECX,0x9
JZ 0x0012bb47
CMP ECX,0xb
JZ 0x0012b074
CMP ECX,0x6
JZ 0x0012b074
CMP ECX,0x12
JBE 0x0012b0ca
MOV RAX,qword ptr [R14 + 0x8]
TEST AL,0x40
JZ 0x0012bf70
MOV EAX,dword ptr [R14 + 0x2c]
TEST EAX,EAX
JZ 0x0012aea6
CMP EAX,dword ptr [R15 + 0x64]
JC 0x0012aec8
LEA RSI,[0x172438]
XOR EDI,EDI
MOV EDX,0x5
CALL 0x00107130
MOV ESI,EBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001550d0
NOP dword ptr [RAX]
MOV RAX,qword ptr [R15 + 0x10]
CMP qword ptr [R14 + 0x20],RAX
JBE 0x0012aef0
MOV EAX,dword ptr [R14 + 0x4]
LEA EDX,[RAX + -0x1]
CMP EDX,0x5ffffffe
JA 0x0012aef0
CMP EAX,0x8
JNZ 0x0012c220
NOP word ptr [RAX + RAX*0x1]
MOV ESI,EBX
LEA RDI,[0x16a386]
XOR EAX,EAX
CALL 0x00107190
MOV EAX,dword ptr [0x0019348c]
TEST EAX,EAX
JNZ 0x0012bdd0
MOV RSI,qword ptr [R15 + 0x80]
TEST RSI,RSI
JZ 0x0012c160
MOV EAX,dword ptr [R14]
ADD RSI,RAX
CMP RAX,qword ptr [R15 + 0x88]
JNC 0x0012bfc0
MOV EDI,0xffffffef
CALL 0x001122a0
MOV ESI,dword ptr [R14 + 0x4]
MOV RDI,R15
CALL 0x001176d0
MOV R11D,dword ptr [0x00196f50]
MOV RDI,RBP
MOV RSI,RAX
TEST R11D,R11D
CMOVNZ RDI,R12
XOR EAX,EAX
CALL 0x00107190
MOV R13D,dword ptr [0x0019345c]
TEST R13D,R13D
JNZ 0x0012bd30
MOV R9D,dword ptr [0x00196f50]
TEST R9D,R9D
JNZ 0x0012beb0
MOV EDI,dword ptr [0x0019348c]
TEST EDI,EDI
JZ 0x0012be00
MOV ESI,dword ptr [R14 + 0x4]
MOV RDI,R15
CALL 0x001176d0
LEA RDI,[0x16a3ce]
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV RDI,qword ptr [R14 + 0x10]
MOV ESI,0x6
CALL 0x001116b0
MOV RSI,qword ptr [R14 + 0x18]
LEA RDI,[0x16a3e0]
XOR EAX,EAX
CALL 0x00107190
MOV ESI,dword ptr [R14 + 0x28]
LEA RDI,[0x16a3eb]
XOR EAX,EAX
CALL 0x00107190
MOV RDI,qword ptr [R14 + 0x20]
MOV ESI,0x6
CALL 0x001116b0
MOV RSI,qword ptr [0x001923a0]
MOV EDI,0x20
CALL 0x00107270
MOV RDI,qword ptr [R14 + 0x38]
MOV ESI,0x6
CALL 0x001116b0
MOV RDX,qword ptr [R14 + 0x30]
MOV ESI,dword ptr [R14 + 0x2c]
XOR EAX,EAX
LEA RDI,[0x16a3f8]
CALL 0x00107190
MOV ESI,dword ptr [0x0019348c]
TEST ESI,ESI
JNZ 0x0012bbb8
MOV EAX,dword ptr [R15 + 0x64]
ADD EBX,0x1
ADD R14,0x50
CMP EAX,EBX
JBE 0x0012bca8
MOV ECX,dword ptr [R14 + 0x4]
CMP ECX,0x10
JA 0x0012bb28
CMP ECX,0xe
JNC 0x0012c140
CMP ECX,0x5
JA 0x0012ae68
CMP ECX,0x4
JNC 0x0012bb47
CMP ECX,0x2
JNZ 0x0012ae83
MOV R13D,dword ptr [R14 + 0x28]
TEST R13D,R13D
JZ 0x0012b09b
CMP R13D,EAX
JNC 0x0012b09b
MOV EAX,R13D
LEA RAX,[RAX + RAX*0x4]
SHL RAX,0x4
ADD RAX,qword ptr [R15 + 0x70]
CMP dword ptr [RAX + 0x4],0x3
JZ 0x0012ae83
MOV EDX,0x5
LEA RSI,[0x172360]
XOR EDI,EDI
CALL 0x00107130
MOV EDX,R13D
MOV ESI,EBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001550d0
MOV ECX,dword ptr [R14 + 0x4]
CMP ECX,0x12
JA 0x0012ae8c
MOV EAX,0x1
SHL RAX,CL
TEST EAX,0x20804
JNZ 0x0012aec8
TEST EAX,0x5c060
JNZ 0x0012bf87
TEST EAX,0x210
JZ 0x0012bf50
MOV R13D,dword ptr [R14 + 0x2c]
TEST R13D,R13D
JZ 0x0012c358
CMP R13D,dword ptr [R15 + 0x64]
JNC 0x0012c3ce
MOV EAX,R13D
LEA RAX,[RAX + RAX*0x4]
SHL RAX,0x4
ADD RAX,qword ptr [R15 + 0x70]
MOV ECX,dword ptr [RAX + 0x4]
MOV EAX,0x1
CMP ECX,0xe
JA 0x0012b134
MOV EAX,0x4182
SHR RAX,CL
NOT RAX
AND EAX,0x1
CMP ECX,0x5fffffff
JA 0x0012aec8
TEST AL,AL
JZ 0x0012aec8
JMP 0x0012c3ce
CALL 0x00115940
TEST EAX,EAX
JNZ 0x0012ac8c
ADD RSP,0x78
XOR EAX,EAX
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
CMP qword ptr [0x00194678],0x0
MOV EDX,0x5
LEA RSI,[0x171ff8]
JNZ 0x0012b69a
MOV EDI,dword ptr [0x0019345c]
MOV RDX,qword ptr [R14 + 0x38]
TEST EDI,EDI
JZ 0x0012b7c8
CMP RDX,0x10
JNZ 0x0012b918
LEA RDX,[0x194680]
MOV RSI,R14
MOV RDI,R15
CALL 0x001149b0
MOV qword ptr [0x00194678],RAX
JMP 0x0012ad90
MOV EDX,0x5
LEA RSI,[0x1648c9]
XOR EDI,EDI
CALL 0x00107130
JMP 0x0012ad4c
MOV ECX,0x8
LEA RDI,[0x16a2b5]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA DL
SBB DL,0x0
TEST DL,DL
JZ 0x0012b680
MOV ECX,dword ptr [0x00196f3c]
MOV R9D,dword ptr [0x00196f40]
MOV R10D,dword ptr [0x00196f5c]
MOV EBP,dword ptr [0x00196f38]
MOV EBX,dword ptr [0x00196f28]
MOV EDI,dword ptr [0x00196f30]
MOV dword ptr [RSP + 0xc],ECX
MOV ECX,dword ptr [0x00196f7c]
MOV R12D,dword ptr [0x00196f68]
MOV ESI,dword ptr [0x00196f6c]
MOV EDX,dword ptr [0x0019346c]
MOV dword ptr [RSP + 0x8],EBX
MOV dword ptr [RSP + 0x14],ECX
MOV ECX,R9D
MOV R8D,dword ptr [0x00196f60]
OR ECX,R10D
MOV EBX,dword ptr [0x00196f48]
MOV R11D,dword ptr [0x00196f34]
MOV dword ptr [RSP + 0x18],EDI
OR ECX,EBP
MOV dword ptr [RSP + 0x4],R8D
MOV R8D,dword ptr [0x00196f2c]
OR ECX,R12D
MOV dword ptr [RSP + 0x10],EBX
MOV EBX,dword ptr [0x00196f74]
OR ECX,EDI
OR R8D,EDX
MOV dword ptr [RSP + 0x1c],ESI
OR ECX,R11D
OR ECX,ESI
OR ECX,dword ptr [RSP + 0x8]
OR ECX,dword ptr [RSP + 0xc]
OR ECX,dword ptr [RSP + 0x4]
OR ECX,dword ptr [RSP + 0x10]
OR ECX,dword ptr [RSP + 0x14]
OR ECX,EBX
OR ECX,R8D
JNZ 0x0012b3d8
TEST R11D,R11D
JZ 0x0012b2d4
MOV ECX,0xa
LEA RDI,[0x16a2f0]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA CL
SBB CL,0x0
TEST CL,CL
JZ 0x0012b3c0
MOV R10D,dword ptr [0x00196f78]
TEST R10D,R10D
JZ 0x0012b31e
MOV ECX,0xb
LEA RDI,[0x16a2fa]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA CL
SBB CL,0x0
TEST CL,CL
JZ 0x0012b3c0
MOV ECX,0xd
LEA RDI,[0x16a305]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA CL
SBB CL,0x0
TEST CL,CL
JZ 0x0012b3c0
TEST EDX,EDX
JNZ 0x0012c517
MOV R9D,dword ptr [0x00196f64]
TEST R9D,R9D
JNZ 0x0012c5f7
MOV R8D,dword ptr [0x00196f58]
MOV ECX,R8D
OR ECX,dword ptr [0x00196f4c]
JZ 0x0012c5d2
MOV ECX,0x7
MOV RSI,RAX
LEA RDI,[0x16a4a6]
CMPSB.REPE RDI,RSI
SETA DL
SBB DL,0x0
TEST DL,DL
JNZ 0x0012c5d2
ADD RAX,0x7
TEST R8D,R8D
JZ 0x0012b38f
MOV ECX,0x7
LEA RDI,[0x1826c0]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA DL
SBB DL,0x0
TEST DL,DL
JZ 0x0012b3c0
MOV R8D,dword ptr [0x00196f4c]
TEST R8D,R8D
JZ 0x0012ad90
MOV ECX,0x8
LEA RDI,[0x1826ce]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x0012ad90
NOP dword ptr [RAX]
MOV EDX,0x4
MOV ESI,R13D
MOV RDI,R15
CALL 0x00111440
JMP 0x0012ad90
MOV ECX,0x7
LEA RDI,[0x16a2cd]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA CL
SBB CL,0x0
TEST CL,CL
JNZ 0x0012baa0
CMP byte ptr [RAX + 0x1],0x7a
LEA RBX,[RAX + 0x7]
JNZ 0x0012b405
LEA RBX,[RAX + 0x8]
TEST EDX,EDX
JNZ 0x0012b3c0
TEST R8D,R8D
JZ 0x0012b446
MOV ECX,0x4
MOV RSI,RBX
LEA RDI,[0x1663a6]
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV ECX,0x5
LEA RDI,[0x1857df]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
TEST R9D,R9D
JNZ 0x0012c430
TEST R10D,R10D
JZ 0x0012b490
MOV ECX,0x5
LEA RDI,[0x182493]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV ECX,0x5
LEA RDI,[0x16ac78]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
TEST EBP,EBP
JZ 0x0012c4df
MOV ECX,0x8
LEA RDI,[0x1862ac]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV ECX,0xc
LEA RDI,[0x1824cd]
TEST R12D,R12D
JNZ 0x0012c66a
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV EAX,dword ptr [RSP + 0x18]
TEST EAX,EAX
JZ 0x0012b503
MOV ECX,0x7
LEA RDI,[0x1826ce]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV EAX,dword ptr [RSP + 0x4]
TEST EAX,EAX
JZ 0x0012b547
MOV ECX,0x6
LEA RDI,[0x185a13]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV ECX,0x8
LEA RDI,[0x182607]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
TEST R11D,R11D
JZ 0x0012b56a
MOV ECX,0x5
LEA RDI,[0x18246b]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV R12D,dword ptr [RSP + 0x1c]
TEST R12D,R12D
JZ 0x0012b5ae
MOV ECX,0x7
LEA RDI,[0x1824f6]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV EDX,0x5
LEA RSI,[0x182515]
MOV RDI,RBX
CALL 0x00107080
TEST EAX,EAX
JZ 0x0012b3c0
MOV EBP,dword ptr [RSP + 0x8]
TEST EBP,EBP
JZ 0x0012b5d2
MOV EDX,0x3
LEA RSI,[0x18254c]
MOV RDI,RBX
CALL 0x00107080
TEST EAX,EAX
JZ 0x0012b3c0
MOV R11D,dword ptr [RSP + 0xc]
TEST R11D,R11D
JZ 0x0012b614
MOV EDX,0x3
LEA RSI,[0x186e32]
MOV RDI,RBX
CALL 0x00107080
TEST EAX,EAX
JZ 0x0012b3c0
MOV EDX,0x8
LEA RSI,[0x18257f]
MOV RDI,RBX
CALL 0x00107080
TEST EAX,EAX
JZ 0x0012b3c0
CMP dword ptr [RSP + 0x10],0x0
JZ 0x0012b637
MOV EDX,0x4
LEA RSI,[0x185297]
MOV RDI,RBX
CALL 0x00107080
TEST EAX,EAX
JZ 0x0012b3c0
CMP dword ptr [RSP + 0x14],0x0
JZ 0x0012ad90
MOV EDX,0x8
LEA RSI,[0x18284e]
MOV RDI,RBX
CALL 0x00107080
TEST EAX,EAX
JZ 0x0012b3c0
MOV EDX,0x8
LEA RSI,[0x1821f9]
MOV RDI,RBX
CALL 0x00107080
TEST EAX,EAX
JNZ 0x0012ad90
JMP 0x0012b3c0
CMP qword ptr [0x00194690],0x0
MOV EDX,0x5
JZ 0x0012b9b0
LEA RSI,[0x172098]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00154b80
JMP 0x0012ad90
MOV EDX,0x5
LEA RSI,[0x164e79]
XOR EDI,EDI
CALL 0x00107130
JMP 0x0012ad4c
CMP dword ptr [0x0019345c],0x1
MOV RDX,qword ptr [R14 + 0x38]
SBB RBX,RBX
AND EBX,0x8
ADD RBX,0x10
CMP RDX,RBX
JZ 0x0012ad90
LEA RBP,[RSP + 0x40]
LEA RSI,[0x16479f]
XOR EAX,EAX
MOV RDI,RBP
CALL 0x001073c0
MOV EDX,0x5
LEA RSI,[0x172028]
XOR EDI,EDI
CALL 0x00107130
MOV RDX,RBP
MOV ESI,R13D
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00154b80
MOV EDX,0x5
LEA RSI,[0x172058]
XOR EDI,EDI
CALL 0x00107130
MOV ESI,EBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00154b80
MOV qword ptr [R14 + 0x38],RBX
JMP 0x0012ad90
MOV EDX,0x5
LEA RSI,[0x164e80]
XOR EDI,EDI
CALL 0x00107130
JMP 0x0012ad4c
CMP AX,0x78
JZ 0x0012b780
CMP AX,0xfeb0
JNZ 0x0012ad0a
MOV RAX,qword ptr [R15 + 0x48]
AND EAX,0x7f
CMP RAX,0x75
JNZ 0x0012ad0a
MOV dword ptr [0x00196f54],0x2
JMP 0x0012ad0a
MOV EDI,0x10
CALL 0x001594b0
MOV RDX,qword ptr [0x001934b0]
MOV qword ptr [RAX],R14
MOV qword ptr [RAX + 0x8],RDX
MOV qword ptr [0x001934b0],RAX
JMP 0x0012ad90
CMP RDX,0x18
JNZ 0x0012b998
LEA RDX,[0x194680]
MOV RSI,R14
MOV RDI,R15
CALL 0x00114ea0
JMP 0x0012b1b8
CMP EDX,0x9
JNZ 0x0012ba70
CMP dword ptr [0x0019345c],0x1
MOV RDX,qword ptr [R14 + 0x38]
SBB RBX,RBX
AND EBX,0x8
ADD RBX,0x8
CMP RDX,RBX
JZ 0x0012ad90
JMP 0x0012b6ee
MOV EDX,0x5
LEA RSI,[0x171ef0]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001550d0
ADD RSP,0x78
XOR EAX,EAX
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
CMP EAX,dword ptr [R15 + 0x64]
JNC 0x0012ac9c
LEA RBX,[RAX + RAX*0x4]
SHL RBX,0x4
ADD RBX,R14
CMP qword ptr [RBX + 0x20],0x0
JZ 0x0012ac9c
MOV EDX,0x5
LEA RSI,[0x1698ba]
XOR EDI,EDI
CALL 0x00107130
SUB RSP,0x8
MOV R9,qword ptr [RBX + 0x20]
XOR EDI,EDI
MOV RCX,qword ptr [RBX + 0x18]
PUSH RAX
LEA RDX,[R15 + 0x10]
LEA RSI,[R15 + 0x8]
MOV R8D,0x1
CALL 0x001144a0
POP R9
XOR EDX,EDX
POP R10
MOV qword ptr [R15 + 0x80],RAX
TEST RAX,RAX
JZ 0x0012b8bb
MOV RDX,qword ptr [RBX + 0x20]
MOV qword ptr [R15 + 0x88],RDX
MOV R14,qword ptr [R15 + 0x70]
JMP 0x0012ac9c
MOV RAX,qword ptr [R15 + 0x48]
AND EAX,0xf000
CMP RAX,0x4000
JNZ 0x0012ad0a
TEST R14,R14
JZ 0x0012b906
LEA RSI,[0x16a2a0]
MOV RDI,R15
CALL 0x001193c0
MOV R14,qword ptr [R15 + 0x70]
TEST RAX,RAX
JNZ 0x0012ad0a
MOV dword ptr [0x00196f54],0x8
JMP 0x0012ad0a
MOV EBP,0x10
MOV R12D,0x10
LEA RBX,[RSP + 0x40]
LEA RSI,[0x16479f]
XOR EAX,EAX
MOV RDI,RBX
CALL 0x001073c0
MOV EDX,0x5
LEA RSI,[0x172028]
XOR EDI,EDI
CALL 0x00107130
MOV RDX,RBX
MOV ESI,R13D
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00154b80
MOV EDX,0x5
LEA RSI,[0x172058]
XOR EDI,EDI
CALL 0x00107130
MOV ESI,EBP
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00154b80
MOV ESI,dword ptr [0x0019345c]
MOV qword ptr [R14 + 0x38],R12
TEST ESI,ESI
JZ 0x0012b7d2
JMP 0x0012b1a6
MOV EBP,0x18
MOV R12D,0x18
JMP 0x0012b923
LEA RSI,[0x16a2bd]
XOR EDI,EDI
CALL 0x00107130
SUB RSP,0x8
MOV RCX,qword ptr [R14 + 0x18]
XOR EDI,EDI
MOV R9,qword ptr [R14 + 0x20]
PUSH RAX
LEA RDX,[R15 + 0x10]
LEA RSI,[R15 + 0x8]
MOV R8D,0x1
CALL 0x001144a0
POP RDX
XOR EDX,EDX
POP RCX
MOV qword ptr [0x00194690],RAX
TEST RAX,RAX
JZ 0x0012b9f4
MOV RDX,qword ptr [R14 + 0x20]
MOV qword ptr [0x00194688],RDX
JMP 0x0012ad90
LEA RBX,[RSP + 0x40]
LEA RSI,[0x16479f]
XOR EAX,EAX
MOV RDI,RBX
CALL 0x001073c0
MOV EDX,0x5
LEA RSI,[0x172028]
XOR EDI,EDI
CALL 0x00107130
MOV RDX,RBX
MOV ESI,R13D
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00154b80
MOV EDX,0x5
LEA RSI,[0x172058]
XOR EDI,EDI
CALL 0x00107130
MOV ESI,0x4
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00154b80
MOV qword ptr [R14 + 0x38],0x4
JMP 0x0012ad90
CMP EDX,0x4
JNZ 0x0012b1ff
CMP dword ptr [0x0019345c],0x1
MOV RDX,qword ptr [R14 + 0x38]
SBB RBX,RBX
AND EBX,0xc
ADD RBX,0xc
CMP RDX,RBX
JZ 0x0012ad90
JMP 0x0012b6ee
MOV ECX,0x8
LEA RDI,[0x16a2d5]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA CL
SBB CL,0x0
TEST CL,CL
JZ 0x0012b3f7
TEST R8D,R8D
JZ 0x0012b2b0
MOV ECX,0x11
LEA RDI,[0x16a2de]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA CL
SBB CL,0x0
TEST CL,CL
JNZ 0x0012b2b0
JMP 0x0012b3c0
MOV RBP,qword ptr [RDI + 0x38]
MOV ECX,EBX
XOR EDI,EDI
MOV R8D,0x5
LEA RDX,[0x171f80]
LEA RSI,[0x171fc0]
CALL 0x00107360
MOV RDX,RBP
MOV ESI,EBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012ac6a
CMP ECX,0x6ffffff7
JZ 0x0012b074
JA 0x0012bb90
CMP ECX,0x12
JBE 0x0012bb47
CMP ECX,0x6ffffff6
JNZ 0x0012ae83
MOV R13D,dword ptr [R14 + 0x28]
TEST R13D,R13D
JZ 0x0012bb79
CMP R13D,EAX
JNC 0x0012bb79
MOV EAX,R13D
LEA RAX,[RAX + RAX*0x4]
SHL RAX,0x4
ADD RAX,qword ptr [R15 + 0x70]
MOV EAX,dword ptr [RAX + 0x4]
CMP EAX,0x2
JZ 0x0012ae83
CMP EAX,0xb
JZ 0x0012ae83
MOV EDX,0x5
LEA RSI,[0x172328]
JMP 0x0012b0a7
CMP ECX,0x6ffffffd
JC 0x0012ae83
CMP ECX,0x6ffffffe
JBE 0x0012b074
CMP ECX,0x6fffffff
JZ 0x0012bb47
JMP 0x0012ae83
MOV RDX,qword ptr [R14 + 0x8]
LEA RSI,[R15 + 0x52]
LEA RDI,[R15 + 0x1f]
CALL 0x0012a330
LEA RDI,[0x16b343]
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00107190
TEST byte ptr [R14 + 0x9],0x8
JZ 0x0012b030
MOV EDX,0x5
LEA RSI,[0x16a427]
XOR EDI,EDI
CALL 0x00107130
LEA R13,[RSP + 0x20]
SUB RSP,0x8
MOV RCX,qword ptr [R14 + 0x18]
PUSH RAX
LEA RDX,[R15 + 0x10]
LEA RSI,[R15 + 0x8]
MOV R9D,0x18
MOV R8D,0x1
MOV RDI,R13
CALL 0x001144a0
POP RDX
POP RCX
TEST RAX,RAX
JZ 0x0012b030
MOV RSI,R13
LEA RDI,[RSP + 0x40]
MOV EDX,0x18
CALL 0x0010ffa0
MOV R13D,dword ptr [RSP + 0x40]
CMP R13D,0x1
JZ 0x0012c4b8
LEA RSI,[0x16a448]
XOR EDI,EDI
MOV EDX,0x5
CALL 0x00107130
MOV ESI,R13D
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV RDI,qword ptr [RSP + 0x48]
MOV ESI,0x6
ADD EBX,0x1
ADD R14,0x50
CALL 0x001116b0
MOV RSI,qword ptr [RSP + 0x50]
LEA RDI,[0x16a463]
XOR EAX,EAX
CALL 0x00107190
MOV EAX,dword ptr [R15 + 0x64]
CMP EAX,EBX
JA 0x0012b043
NOP dword ptr [RAX + RAX*0x1]
MOV EAX,dword ptr [0x0019348c]
TEST EAX,EAX
JNZ 0x0012ac3b
MOV EDX,0x5
LEA RSI,[0x1724f0]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOVZX EAX,word ptr [R15 + 0x52]
LEA EDX,[RAX + -0xb4]
CMP DX,0x1
JBE 0x0012c480
CMP AX,0x3e
JZ 0x0012c480
MOV EDX,0x5
LEA RSI,[0x16a476]
CMP AX,0x28
JZ 0x0012c48c
CMP AX,0x14
JZ 0x0012c641
LEA RDI,[0x16a48f]
CALL 0x001070b0
MOV EAX,0x1
JMP 0x0012ac40
MOV RDI,qword ptr [R14 + 0x10]
MOV ESI,0x6
CALL 0x001116b0
MOV RCX,qword ptr [R14 + 0x38]
MOV RDX,qword ptr [R14 + 0x20]
XOR EAX,EAX
MOV RSI,qword ptr [R14 + 0x18]
LEA RDI,[0x16a399]
CALL 0x00107190
MOV R10D,dword ptr [0x0019348c]
TEST R10D,R10D
JZ 0x0012c088
MOV RCX,qword ptr [0x001923a0]
MOV EDX,0x2
MOV ESI,0x1
LEA RDI,[0x16a396]
CALL 0x001073e0
MOV ESI,dword ptr [R14 + 0x28]
MOV EDX,dword ptr [0x0019348c]
CMP ESI,dword ptr [R15 + 0x64]
JNC 0x0012bfe0
TEST EDX,EDX
JZ 0x0012c268
LEA RDI,[0x16a4b4]
XOR EAX,EAX
CALL 0x00107190
MOV RDX,qword ptr [R14 + 0x30]
MOV ESI,dword ptr [R14 + 0x2c]
XOR EAX,EAX
LEA RDI,[0x16a3b3]
CALL 0x00107190
JMP 0x0012b022
LEA RSI,[R15 + 0x88]
LEA RDI,[R15 + 0x80]
MOV RDX,R14
CALL 0x00113f30
LEA RDI,[0x16a38f]
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012af3b
MOV RSI,qword ptr [0x001923a0]
MOV EDI,0x20
CALL 0x00107270
MOV RDI,qword ptr [R14 + 0x10]
MOV ESI,0x6
CALL 0x001116b0
MOV RSI,qword ptr [R14 + 0x18]
LEA RDI,[0x16a406]
XOR EAX,EAX
CALL 0x00107190
LEA RDI,[0x16a3ef]
XOR EAX,EAX
CALL 0x00107190
MOV RDI,qword ptr [R14 + 0x20]
MOV ESI,0x6
CALL 0x001116b0
LEA RDI,[0x16a396]
XOR EAX,EAX
CALL 0x00107190
MOV RDI,qword ptr [R14 + 0x38]
MOV ESI,0x6
CALL 0x001116b0
MOV RDX,qword ptr [R14 + 0x8]
LEA RSI,[R15 + 0x52]
LEA RDI,[R15 + 0x1f]
CALL 0x0012a330
LEA RDI,[0x16bacf]
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV RCX,qword ptr [R14 + 0x30]
MOV EDX,dword ptr [R14 + 0x2c]
XOR EAX,EAX
MOV ESI,dword ptr [R14 + 0x28]
LEA RDI,[0x16a40f]
CALL 0x00107190
JMP 0x0012b022
MOV RDI,qword ptr [R14 + 0x10]
MOV ESI,0x6
CALL 0x001116b0
MOV RSI,qword ptr [R14 + 0x18]
LEA RDI,[0x16a3bd]
XOR EAX,EAX
CALL 0x00107190
MOV RSI,qword ptr [R14 + 0x20]
LEA RDI,[0x16a3bd]
XOR EAX,EAX
CALL 0x00107190
MOV RSI,qword ptr [R14 + 0x38]
LEA RDI,[0x16a3a7]
XOR EAX,EAX
CALL 0x00107190
MOV R8D,dword ptr [0x0019348c]
TEST R8D,R8D
JZ 0x0012c180
MOV RCX,qword ptr [0x001923a0]
MOV EDX,0x2
MOV ESI,0x1
LEA RDI,[0x16a396]
CALL 0x001073e0
MOV ESI,dword ptr [R14 + 0x28]
MOV EDX,dword ptr [R14 + 0x2c]
LEA RDI,[0x16a3c5]
XOR EAX,EAX
CALL 0x00107190
MOV RSI,qword ptr [R14 + 0x30]
LEA RDI,[0x16a3b7]
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012b022
CMP ECX,0x8
JZ 0x0012aef0
MOV RAX,qword ptr [R14 + 0x8]
TEST AL,0x40
JNZ 0x0012ae98
JMP 0x0012bf7c
CMP ECX,0x5fffffff
JA 0x0012aef0
TEST EAX,0x1000000
JNZ 0x0012aec8
MOV R13D,dword ptr [R14 + 0x2c]
TEST R13D,R13D
JZ 0x0012aec8
MOV EDX,0x5
LEA RSI,[0x172408]
XOR EDI,EDI
CALL 0x00107130
MOV EDX,R13D
MOV ESI,EBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001550d0
JMP 0x0012aec8
LEA RSI,[0x1648c9]
MOV EDX,0x5
XOR EDI,EDI
CALL 0x00107130
MOV RSI,RAX
JMP 0x0012af31
MOVZX EAX,word ptr [R15 + 0x52]
CMP AX,0x12
JZ 0x0012c0c0
JA 0x0012c118
CMP AX,0x6
JZ 0x0012c0c0
JA 0x0012c0b0
SUB EAX,0x2
CMP AX,0x1
JBE 0x0012c0c0
LEA R13,[0x169c35]
TEST EDX,EDX
JZ 0x0012c248
LEA RDI,[0x16a4b4]
XOR EAX,EAX
LEA R13,[0x169c35]
CALL 0x00107190
MOV RDX,qword ptr [R14 + 0x30]
MOV ESI,dword ptr [R14 + 0x2c]
XOR EAX,EAX
LEA RDI,[0x16a3b3]
CALL 0x00107190
CMP byte ptr [R13],0x0
JNZ 0x0012b022
MOV R13D,dword ptr [R14 + 0x28]
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x1724a8]
CALL 0x00107130
MOV ESI,EBX
MOV RDI,RAX
MOV EDX,R13D
XOR EAX,EAX
CALL 0x001550d0
JMP 0x0012b022
MOV RDX,qword ptr [R14 + 0x8]
LEA RSI,[R15 + 0x52]
LEA RDI,[R15 + 0x1f]
CALL 0x0012a330
LEA RDI,[0x16bacf]
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012bd85
CMP AX,0xb
JNZ 0x0012c012
NOP word ptr [RAX + RAX*0x1]
CMP ESI,0xff00
JZ 0x0012c4a8
CMP ESI,0xff01
JNZ 0x0012c012
LEA R13,[0x16a29a]
TEST EDX,EDX
JZ 0x0012c248
MOV RSI,R13
LEA RDI,[0x16a4ae]
XOR EAX,EAX
CALL 0x00107190
MOV RDX,qword ptr [R14 + 0x30]
MOV ESI,dword ptr [R14 + 0x2c]
XOR EAX,EAX
LEA RDI,[0x16a3b3]
CALL 0x00107190
JMP 0x0012c04c
CMP AX,0x3e
JZ 0x0012c0c0
JA 0x0012c130
CMP AX,0x2b
JNZ 0x0012c012
JMP 0x0012c0c0
SUB AX,0xb4
CMP AX,0x1
JA 0x0012c012
JMP 0x0012c0c0
MOV R13D,dword ptr [R14 + 0x28]
TEST R13D,R13D
JZ 0x0012b0ca
MOV EDX,0x5
LEA RSI,[0x172398]
JMP 0x0012b0a7
LEA RSI,[0x164e80]
MOV EDX,0x5
XOR EDI,EDI
CALL 0x00107130
MOV RSI,RAX
JMP 0x0012af31
MOV RDX,qword ptr [R14 + 0x8]
LEA RSI,[R15 + 0x52]
LEA RDI,[R15 + 0x1f]
CALL 0x0012a330
LEA RDI,[0x16bacf]
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012bf21
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x171f58]
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012ac3b
MOV ECX,dword ptr [0x00196f50]
TEST ECX,ECX
JZ 0x0012c3e0
LEA RSI,[0x1721a8]
TEST EAX,EAX
JZ 0x0012ae21
LEA RSI,[0x16a358]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV EDX,0x5
LEA RSI,[0x172160]
JMP 0x0012ae21
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x172470]
CALL 0x00107130
MOV ESI,EBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001550d0
JMP 0x0012aef0
MOV RCX,qword ptr [R14 + 0x30]
MOV EDX,dword ptr [R14 + 0x2c]
LEA RDI,[0x16a3af]
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012c04c
MOV RCX,qword ptr [R14 + 0x30]
MOV EDX,dword ptr [R14 + 0x2c]
LEA RDI,[0x16a3af]
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012b022
MOV EAX,dword ptr [0x00193494]
TEST EAX,EAX
JZ 0x0012ac3b
MOV EDX,0x5
LEA RSI,[0x16a346]
JMP 0x0012adc8
MOV RAX,qword ptr [R15 + 0x48]
AND EAX,0xff0000
CMP RAX,0x830000
JZ 0x0012b791
JA 0x0012c2f0
CMP RAX,0x810000
JZ 0x0012c4d0
CMP RAX,0x820000
JZ 0x0012c4d0
CMP RAX,0x800000
JNZ 0x0012ad0a
JMP 0x0012b791
CMP RAX,0x850000
JZ 0x0012c4d0
CMP RAX,0x860000
JZ 0x0012b791
CMP RAX,0x840000
JNZ 0x0012ad0a
JMP 0x0012b791
MOV EDX,0x5
LEA RSI,[0x16a365]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV EAX,dword ptr [R15 + 0x64]
MOV R14,qword ptr [R15 + 0x70]
TEST EAX,EAX
JNZ 0x0012ae50
JMP 0x0012bca8
MOVZX EAX,word ptr [R15 + 0x50]
SUB EAX,0x2
CMP AX,0x1
JBE 0x0012aec8
MOV RAX,qword ptr [R15 + 0x80]
TEST RAX,RAX
JZ 0x0012c5df
MOV EDX,dword ptr [R14]
CMP RDX,qword ptr [R15 + 0x88]
JNC 0x0012c569
ADD RAX,RDX
MOV ECX,0x9
LEA RDI,[0x16a373]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA DL
SBB DL,0x0
TEST DL,DL
JZ 0x0012aec8
MOV RSI,RAX
MOV ECX,0xa
LEA RDI,[0x16a37c]
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012aec8
MOV R13D,dword ptr [R14 + 0x2c]
MOV EDX,0x5
LEA RSI,[0x1723c8]
JMP 0x0012bfa0
TEST EAX,EAX
JZ 0x0012c453
LEA RSI,[0x16a358]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV EDX,0x5
LEA RSI,[0x172208]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV EDX,0x5
LEA RSI,[0x172250]
JMP 0x0012ae21
MOV ECX,0x6
LEA RDI,[0x1826c0]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
JMP 0x0012b44f
LEA RSI,[0x172298]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
MOV EDX,0x5
LEA RSI,[0x1722e0]
JMP 0x0012ae21
MOV EDX,0x5
LEA RSI,[0x16a46a]
XOR EDI,EDI
CALL 0x00107130
MOV RDI,RAX
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012bd12
LEA R13,[0x16a293]
JMP 0x0012c0df
LEA RDI,[0x16a43a]
XOR EAX,EAX
CALL 0x00107190
JMP 0x0012bc6e
MOV dword ptr [0x00196f54],0x4
JMP 0x0012ad0a
TEST R12D,R12D
JZ 0x0012b4dd
MOV ECX,0x8
LEA RDI,[0x1862bf]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV ECX,0xc
LEA RDI,[0x1825c1]
JMP 0x0012b4cb
MOV ECX,0x7
MOV RSI,RAX
LEA RDI,[0x16a4a6]
CMPSB.REPE RDI,RSI
SETA DL
SBB DL,0x0
TEST DL,DL
JZ 0x0012b3c0
MOV ECX,0xe
MOV RSI,RAX
LEA RDI,[0x16a312]
CMPSB.REPE RDI,RSI
SETA DL
SBB DL,0x0
TEST DL,DL
JZ 0x0012b3c0
MOV ECX,0x11
MOV RSI,RAX
LEA RDI,[0x16a321]
JMP 0x0012b3ae
LEA RSI,[0x1648c9]
MOV EDX,0x5
XOR EDI,EDI
CALL 0x00107130
MOV RSI,RAX
MOV ECX,0x9
LEA RDI,[0x16a373]
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012aec8
MOV RAX,qword ptr [R15 + 0x80]
TEST RAX,RAX
JZ 0x0012c652
MOV EDX,dword ptr [R14]
CMP qword ptr [R15 + 0x88],RDX
JA 0x0012c6ab
MOV EDX,0x5
LEA RSI,[0x1648c9]
XOR EDI,EDI
CALL 0x00107130
JMP 0x0012c3ac
TEST EBX,EBX
JZ 0x0012ad90
JMP 0x0012c536
LEA RSI,[0x164e80]
MOV EDX,0x5
XOR EDI,EDI
CALL 0x00107130
MOV RSI,RAX
JMP 0x0012c57f
MOV ECX,0x7
MOV RSI,RAX
LEA RDI,[0x16a4a6]
CMPSB.REPE RDI,RSI
SETA DL
SBB DL,0x0
TEST DL,DL
JNZ 0x0012c5d2
ADD RAX,0x7
MOV ECX,0x5
LEA RDI,[0x1663a6]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
SETA DL
SBB DL,0x0
TEST DL,DL
JZ 0x0012b3c0
MOV R8D,dword ptr [0x00196f58]
JMP 0x0012b36f
MOV EDX,0x5
LEA RSI,[0x16a485]
JMP 0x0012c48c
MOV EDX,0x5
LEA RSI,[0x164e80]
XOR EDI,EDI
CALL 0x00107130
JMP 0x0012c3ac
MOV ECX,0x8
LEA RDI,[0x1862bf]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0012b3c0
MOV ECX,0xc
LEA RDI,[0x1824cd]
MOV RSI,RBX
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
TEST AL,AL
JNZ 0x0012c506
JMP 0x0012b3c0
ADD RAX,RDX
JMP 0x0012c3ac
(translation_unit "undefined8 FUN_0012ac00(long param_1)\n\n{\n  short sVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  byte bVar5;\n  ushort uVar6;\n  int iVar7;\n  int iVar8;\n  byte *pbVar9;\n  ulong uVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  char *pcVar14;\n  ulong uVar15;\n  uint uVar16;\n  ulong uVar17;\n  byte *pbVar18;\n  undefined4 uVar19;\n  long lVar20;\n  byte *pbVar21;\n  uint uVar22;\n  uint uVar23;\n  uint *puVar24;\n  bool bVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  byte bVar30;\n  undefined1 local_88 [32];\n  uint local_68 [2];\n  undefined8 local_60;\n  undefined8 local_58;\n  \n  bVar30 = 0;\n  uVar22 = *(uint *)(param_1 + 100);\n  *(undefined8 *)(param_1 + 0x70) = 0;\n  if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }\n  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }\n  if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }\n  if (iVar7 == 0) {\n    return 0;\n  }\n  uVar22 = *(uint *)(param_1 + 0x68);\n  puVar24 = *(uint **)(param_1 + 0x70);\n  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }\n  DAT_00194678 = 0;\n  DAT_00194690 = 0;\n  DAT_00194670 = 0;\n  DAT_001934b0 = (undefined8 *)0x0;\n  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;\n  uVar6 = *(ushort *)(param_1 + 0x52);\n  if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar14);\n  sVar1 = *(short *)(param_1 + 0x52);\n  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}\n\n" (function_definition "undefined8 FUN_0012ac00(long param_1)\n\n{\n  short sVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  byte bVar5;\n  ushort uVar6;\n  int iVar7;\n  int iVar8;\n  byte *pbVar9;\n  ulong uVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  char *pcVar14;\n  ulong uVar15;\n  uint uVar16;\n  ulong uVar17;\n  byte *pbVar18;\n  undefined4 uVar19;\n  long lVar20;\n  byte *pbVar21;\n  uint uVar22;\n  uint uVar23;\n  uint *puVar24;\n  bool bVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  byte bVar30;\n  undefined1 local_88 [32];\n  uint local_68 [2];\n  undefined8 local_60;\n  undefined8 local_58;\n  \n  bVar30 = 0;\n  uVar22 = *(uint *)(param_1 + 100);\n  *(undefined8 *)(param_1 + 0x70) = 0;\n  if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }\n  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }\n  if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }\n  if (iVar7 == 0) {\n    return 0;\n  }\n  uVar22 = *(uint *)(param_1 + 0x68);\n  puVar24 = *(uint **)(param_1 + 0x70);\n  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }\n  DAT_00194678 = 0;\n  DAT_00194690 = 0;\n  DAT_00194670 = 0;\n  DAT_001934b0 = (undefined8 *)0x0;\n  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;\n  uVar6 = *(ushort *)(param_1 + 0x52);\n  if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar14);\n  sVar1 = *(short *)(param_1 + 0x52);\n  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}" type_identifier (function_declarator "FUN_0012ac00(long param_1)" identifier (parameter_list "(long param_1)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) ))) (compound_statement "{\n  short sVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  byte bVar5;\n  ushort uVar6;\n  int iVar7;\n  int iVar8;\n  byte *pbVar9;\n  ulong uVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  char *pcVar14;\n  ulong uVar15;\n  uint uVar16;\n  ulong uVar17;\n  byte *pbVar18;\n  undefined4 uVar19;\n  long lVar20;\n  byte *pbVar21;\n  uint uVar22;\n  uint uVar23;\n  uint *puVar24;\n  bool bVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  byte bVar30;\n  undefined1 local_88 [32];\n  uint local_68 [2];\n  undefined8 local_60;\n  undefined8 local_58;\n  \n  bVar30 = 0;\n  uVar22 = *(uint *)(param_1 + 100);\n  *(undefined8 *)(param_1 + 0x70) = 0;\n  if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }\n  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }\n  if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }\n  if (iVar7 == 0) {\n    return 0;\n  }\n  uVar22 = *(uint *)(param_1 + 0x68);\n  puVar24 = *(uint **)(param_1 + 0x70);\n  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }\n  DAT_00194678 = 0;\n  DAT_00194690 = 0;\n  DAT_00194670 = 0;\n  DAT_001934b0 = (undefined8 *)0x0;\n  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;\n  uVar6 = *(ushort *)(param_1 + 0x52);\n  if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar14);\n  sVar1 = *(short *)(param_1 + 0x52);\n  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}" { (declaration "short sVar1;" (sized_type_specifier "short" short) identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "byte bVar5;" type_identifier identifier ;) (declaration "ushort uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "ulong uVar10;" type_identifier identifier ;) (declaration "undefined8 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "undefined8 uVar13;" type_identifier identifier ;) (declaration "char *pcVar14;" primitive_type (pointer_declarator "*pcVar14" * identifier) ;) (declaration "ulong uVar15;" type_identifier identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "ulong uVar17;" type_identifier identifier ;) (declaration "byte *pbVar18;" type_identifier (pointer_declarator "*pbVar18" * identifier) ;) (declaration "undefined4 uVar19;" type_identifier identifier ;) (declaration "long lVar20;" (sized_type_specifier "long" long) identifier ;) (declaration "byte *pbVar21;" type_identifier (pointer_declarator "*pbVar21" * identifier) ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "uint *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "bool bVar25;" primitive_type identifier ;) (declaration "bool bVar26;" primitive_type identifier ;) (declaration "undefined1 uVar27;" type_identifier identifier ;) (declaration "bool bVar28;" primitive_type identifier ;) (declaration "undefined1 uVar29;" type_identifier identifier ;) (declaration "byte bVar30;" type_identifier identifier ;) (declaration "undefined1 local_88 [32];" type_identifier (array_declarator "local_88 [32]" identifier [ number_literal ]) ;) (declaration "uint local_68 [2];" type_identifier (array_declarator "local_68 [2]" identifier [ number_literal ]) ;) (declaration "undefined8 local_60;" type_identifier identifier ;) (declaration "undefined8 local_58;" type_identifier identifier ;) (expression_statement "bVar30 = 0;" (assignment_expression "bVar30 = 0" identifier = number_literal) ;) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x70) = 0;" (assignment_expression "*(undefined8 *)(param_1 + 0x70) = 0" (pointer_expression "*(undefined8 *)(param_1 + 0x70)" * (cast_expression "(undefined8 *)(param_1 + 0x70)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }" if (parenthesized_expression "(uVar22 == 0)" ( (binary_expression "uVar22 == 0" identifier == number_literal) )) (compound_statement "{\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }" { (if_statement "if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }" if (parenthesized_expression "(*(long *)(param_1 + 0x38) != 0)" ( (binary_expression "*(long *)(param_1 + 0x38) != 0" (pointer_expression "*(long *)(param_1 + 0x38)" * (cast_expression "(long *)(param_1 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }" { (expression_statement "uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" identifier = (call_expression "dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" identifier (argument_list "(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" ( number_literal , (string_literal ""possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" if (parenthesized_expression "(DAT_00193494 == 0)" ( (binary_expression "DAT_00193494 == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nThere are no sections in this file.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nThere are no sections in this file.\n",5)" identifier (argument_list "(0,"\nThere are no sections in this file.\n",5)" ( number_literal , (string_literal ""\nThere are no sections in this file.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }" if (parenthesized_expression "((DAT_00193494 != 0) && (DAT_0019347c == 0))" ( (binary_expression "(DAT_00193494 != 0) && (DAT_0019347c == 0)" (parenthesized_expression "(DAT_00193494 != 0)" ( (binary_expression "DAT_00193494 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_0019347c == 0)" ( (binary_expression "DAT_0019347c == 0" identifier == number_literal) ))) )) (compound_statement "{\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }" { (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x38)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x38)" * (cast_expression "(undefined8 *)(param_1 + 0x38)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);" (assignment_expression "pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" identifier = (cast_expression "(char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" identifier (argument_list "(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" ( number_literal , (string_literal ""There is %d section header, starting at offset 0x%lx:\n"" " string_content escape_sequence ") , (string_literal ""There are %d section headers, starting at offset 0x%lx:\n"" " string_content escape_sequence ") , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar14,(ulong)uVar22,uVar12);" (call_expression "printf(pcVar14,(ulong)uVar22,uVar12)" identifier (argument_list "(pcVar14,(ulong)uVar22,uVar12)" ( identifier , (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier ))) ;) })) (if_statement "if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }" if (parenthesized_expression "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )) (compound_statement "{\n    iVar7 = FUN_00115940(param_1,0);\n  }" { (expression_statement "iVar7 = FUN_00115940(param_1,0);" (assignment_expression "iVar7 = FUN_00115940(param_1,0)" identifier = (call_expression "FUN_00115940(param_1,0)" identifier (argument_list "(param_1,0)" ( identifier , number_literal )))) ;) }) (else_clause "else {\n    iVar7 = FUN_00115650();\n  }" else (compound_statement "{\n    iVar7 = FUN_00115650();\n  }" { (expression_statement "iVar7 = FUN_00115650();" (assignment_expression "iVar7 = FUN_00115650()" identifier = (call_expression "FUN_00115650()" identifier (argument_list "()" ( )))) ;) }))) (if_statement "if (iVar7 == 0) {\n    return 0;\n  }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "uVar22 = *(uint *)(param_1 + 0x68);" (assignment_expression "uVar22 = *(uint *)(param_1 + 0x68)" identifier = (pointer_expression "*(uint *)(param_1 + 0x68)" * (cast_expression "(uint *)(param_1 + 0x68)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x68)" ( (binary_expression "param_1 + 0x68" identifier + number_literal) ))))) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (if_statement "if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }" if (parenthesized_expression "(((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0))" ( (binary_expression "((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)" (parenthesized_expression "((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100)))" ( (binary_expression "(uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))" (parenthesized_expression "(uVar22 != 0)" ( (binary_expression "uVar22 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" ( (binary_expression "uVar22 < *(uint *)(param_1 + 100)" identifier < (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ))) )) && (parenthesized_expression "(*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)" ( (binary_expression "*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0" (pointer_expression "*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" * (cast_expression "(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" identifier + (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }" { (expression_statement "uVar12 = dcgettext(0,"string table",5);" (assignment_expression "uVar12 = dcgettext(0,"string table",5)" identifier = (call_expression "dcgettext(0,"string table",5)" identifier (argument_list "(0,"string table",5)" ( number_literal , (string_literal ""string table"" " string_content ") , number_literal )))) ;) (expression_statement "lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);" (assignment_expression "lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" identifier = (call_expression "FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" identifier (argument_list "(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" ( number_literal , (binary_expression "param_1 + 8" identifier + number_literal) , (binary_expression "param_1 + 0x10" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6)" * (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 6)" ( (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 6" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" identifier + (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) , number_literal , (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" * (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" identifier + (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) , identifier )))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (expression_statement "*(long *)(param_1 + 0x80) = lVar20;" (assignment_expression "*(long *)(param_1 + 0x80) = lVar20" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) = identifier) ;) (if_statement "if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }" if (parenthesized_expression "(lVar20 != 0)" ( (binary_expression "lVar20 != 0" identifier != number_literal) )) (compound_statement "{\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }" { (expression_statement "uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);" (assignment_expression "uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" identifier = (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" * (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" identifier + (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) ))))) ;) })) (expression_statement "*(undefined8 *)(param_1 + 0x88) = uVar12;" (assignment_expression "*(undefined8 *)(param_1 + 0x88) = uVar12" (pointer_expression "*(undefined8 *)(param_1 + 0x88)" * (cast_expression "(undefined8 *)(param_1 + 0x88)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) })) (expression_statement "DAT_00194678 = 0;" (assignment_expression "DAT_00194678 = 0" identifier = number_literal) ;) (expression_statement "DAT_00194690 = 0;" (assignment_expression "DAT_00194690 = 0" identifier = number_literal) ;) (expression_statement "DAT_00194670 = 0;" (assignment_expression "DAT_00194670 = 0" identifier = number_literal) ;) (expression_statement "DAT_001934b0 = (undefined8 *)0x0;" (assignment_expression "DAT_001934b0 = (undefined8 *)0x0" identifier = (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;" (assignment_expression "DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4" identifier = (binary_expression "(-(uint)(DAT_0019345c == 0) & 4) + 4" (parenthesized_expression "(-(uint)(DAT_0019345c == 0) & 4)" ( (binary_expression "-(uint)(DAT_0019345c == 0) & 4" (unary_expression "-(uint)(DAT_0019345c == 0)" - (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) (expression_statement "uVar6 = *(ushort *)(param_1 + 0x52);" (assignment_expression "uVar6 = *(ushort *)(param_1 + 0x52)" identifier = (pointer_expression "*(ushort *)(param_1 + 0x52)" * (cast_expression "(ushort *)(param_1 + 0x52)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x52)" ( (binary_expression "param_1 + 0x52" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" if (parenthesized_expression "(uVar6 < 0x30)" ( (binary_expression "uVar6 < 0x30" identifier < number_literal) )) (compound_statement "{\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }" { (if_statement "if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" if (parenthesized_expression "(uVar6 < 0x2e)" ( (binary_expression "uVar6 < 0x2e" identifier < number_literal) )) (compound_statement "{\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }" { (if_statement "if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }" if (parenthesized_expression "(((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000))" ( (binary_expression "((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)" (parenthesized_expression "((uVar6 == 8) || (uVar6 == 10))" ( (binary_expression "(uVar6 == 8) || (uVar6 == 10)" (parenthesized_expression "(uVar6 == 8)" ( (binary_expression "uVar6 == 8" identifier == number_literal) )) || (parenthesized_expression "(uVar6 == 10)" ( (binary_expression "uVar6 == 10" identifier == number_literal) ))) )) && (parenthesized_expression "(((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)" ( (binary_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000" (parenthesized_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000)" ( (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0xf000" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }" { (if_statement "if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }" if (parenthesized_expression "(puVar24 != (uint *)0x0)" ( (binary_expression "puVar24 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }" { (expression_statement "lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");" (assignment_expression "lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32")" identifier = (call_expression "FUN_001193c0(param_1,".gcc_compiled_long32")" identifier (argument_list "(param_1,".gcc_compiled_long32")" ( identifier , (string_literal "".gcc_compiled_long32"" " string_content ") )))) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (if_statement "if (lVar20 != 0) goto LAB_0012ad0a;" if (parenthesized_expression "(lVar20 != 0)" ( (binary_expression "lVar20 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) })) (expression_statement "DAT_00196f54 = 8;" (assignment_expression "DAT_00196f54 = 8" identifier = number_literal) ;) })) }) (else_clause "else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" else (compound_statement "{\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" { (expression_statement "uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;" (assignment_expression "uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000" identifier = (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) & number_literal)) ;) (if_statement "if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }" if (parenthesized_expression "(uVar22 != 0x830000)" ( (binary_expression "uVar22 != 0x830000" identifier != number_literal) )) (compound_statement "{\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }" { (if_statement "if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" if (parenthesized_expression "(uVar22 < 0x830001)" ( (binary_expression "uVar22 < 0x830001" identifier < number_literal) )) (compound_statement "{\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }" { (if_statement "if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }" if (parenthesized_expression "((uVar22 == 0x810000) || (uVar22 == 0x820000))" ( (binary_expression "(uVar22 == 0x810000) || (uVar22 == 0x820000)" (parenthesized_expression "(uVar22 == 0x810000)" ( (binary_expression "uVar22 == 0x810000" identifier == number_literal) )) || (parenthesized_expression "(uVar22 == 0x820000)" ( (binary_expression "uVar22 == 0x820000" identifier == number_literal) ))) )) (compound_statement "{\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }" { (labeled_statement "LAB_0012c4d0:\n            DAT_00196f54 = 4;" statement_identifier : (expression_statement "DAT_00196f54 = 4;" (assignment_expression "DAT_00196f54 = 4" identifier = number_literal) ;)) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;) })) (if_statement "if (uVar22 != 0x800000) goto LAB_0012ad0a;" if (parenthesized_expression "(uVar22 != 0x800000)" ( (binary_expression "uVar22 != 0x800000" identifier != number_literal) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) }) (else_clause "else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" else (compound_statement "{\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" { (if_statement "if (uVar22 == 0x850000) goto LAB_0012c4d0;" if (parenthesized_expression "(uVar22 == 0x850000)" ( (binary_expression "uVar22 == 0x850000" identifier == number_literal) )) (goto_statement "goto LAB_0012c4d0;" goto statement_identifier ;)) (if_statement "if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;" if (parenthesized_expression "((uVar22 != 0x860000) && (uVar22 != 0x840000))" ( (binary_expression "(uVar22 != 0x860000) && (uVar22 != 0x840000)" (parenthesized_expression "(uVar22 != 0x860000)" ( (binary_expression "uVar22 != 0x860000" identifier != number_literal) )) && (parenthesized_expression "(uVar22 != 0x840000)" ( (binary_expression "uVar22 != 0x840000" identifier != number_literal) ))) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) }))) })) (labeled_statement "LAB_0012b791:\n      DAT_00196f54 = 2;" statement_identifier : (expression_statement "DAT_00196f54 = 2;" (assignment_expression "DAT_00196f54 = 2" identifier = number_literal) ;)) }))) }) (else_clause "else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" else (if_statement "if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" if (parenthesized_expression "(((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75))" ( (binary_expression "((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)" (parenthesized_expression "((uVar6 == 0x78) || (uVar6 == 0xfeb0))" ( (binary_expression "(uVar6 == 0x78) || (uVar6 == 0xfeb0)" (parenthesized_expression "(uVar6 == 0x78)" ( (binary_expression "uVar6 == 0x78" identifier == number_literal) )) || (parenthesized_expression "(uVar6 == 0xfeb0)" ( (binary_expression "uVar6 == 0xfeb0" identifier == number_literal) ))) )) && (parenthesized_expression "(((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)" ( (binary_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75" (parenthesized_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f)" ( (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0x7f" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_0012b791;" goto statement_identifier ;)))) (labeled_statement "LAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" statement_identifier : (if_statement "if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" if (parenthesized_expression "(*(int *)(param_1 + 100) == 0)" ( (binary_expression "*(int *)(param_1 + 100) == 0" (pointer_expression "*(int *)(param_1 + 100)" * (cast_expression "(int *)(param_1 + 100)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }" { (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" if (parenthesized_expression "(DAT_00193494 == 0)" ( (binary_expression "DAT_00193494 == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (labeled_statement "LAB_0012c296:\n    pcVar14 = "\nSection Header:\n";" statement_identifier : (expression_statement "pcVar14 = "\nSection Header:\n";" (assignment_expression "pcVar14 = "\nSection Header:\n"" identifier = (string_literal ""\nSection Header:\n"" " escape_sequence string_content escape_sequence ")) ;)) }) (else_clause "else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" else (compound_statement "{\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" { (expression_statement "uVar22 = 0;" (assignment_expression "uVar22 = 0" identifier = number_literal) ;) (do_statement "do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));" do (compound_statement "{\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    }" { (if_statement "if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" if (parenthesized_expression "(puVar24 == (uint *)0x0)" ( (binary_expression "puVar24 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }" { (expression_statement "pbVar9 = (byte *)dcgettext(0,"<none>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<none>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<none>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<none>",5)" identifier (argument_list "(0,"<none>",5)" ( number_literal , (string_literal ""<none>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" else (if_statement "if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" if (parenthesized_expression "(*(long *)(param_1 + 0x80) == 0)" ( (binary_expression "*(long *)(param_1 + 0x80) == 0" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }" { (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" else (compound_statement "{\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" { (expression_statement "pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);" (assignment_expression "pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" identifier = (cast_expression "(byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" ( (binary_expression "*(long *)(param_1 + 0x80) + (ulong)*puVar24" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) + (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) )))) ;) (if_statement "if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }" if (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24)" ( (binary_expression "*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24" (pointer_expression "*(ulong *)(param_1 + 0x88)" * (cast_expression "(ulong *)(param_1 + 0x88)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) <= (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) )) (compound_statement "{\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }" { (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) })) }))))) (expression_statement "iVar4 = DAT_00196f7c;" (assignment_expression "iVar4 = DAT_00196f7c" identifier = identifier) ;) (expression_statement "iVar3 = DAT_00196f48;" (assignment_expression "iVar3 = DAT_00196f48" identifier = identifier) ;) (expression_statement "iVar2 = DAT_00196f3c;" (assignment_expression "iVar2 = DAT_00196f3c" identifier = identifier) ;) (expression_statement "iVar7 = DAT_00196f28;" (assignment_expression "iVar7 = DAT_00196f28" identifier = identifier) ;) (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" if (parenthesized_expression "(uVar16 == 0xb)" ( (binary_expression "uVar16 == 0xb" identifier == number_literal) )) (compound_statement "{\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }" { (expression_statement "pcVar14 = "File contains multiple dynamic symbol tables\n";" (assignment_expression "pcVar14 = "File contains multiple dynamic symbol tables\n"" identifier = (string_literal ""File contains multiple dynamic symbol tables\n"" " string_content escape_sequence ")) ;) (if_statement "if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" if (parenthesized_expression "(DAT_00194678 == 0)" ( (binary_expression "DAT_00194678 == 0" identifier == number_literal) )) (compound_statement "{\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }" { (if_statement "if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" if (parenthesized_expression "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )) (compound_statement "{\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }" { (if_statement "if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 0x18)" ( (binary_expression "*(long *)(puVar24 + 0xe) != 0x18" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }" { (expression_statement "uVar19 = 0x18;" (assignment_expression "uVar19 = 0x18" identifier = number_literal) ;) (expression_statement "uVar12 = 0x18;" (assignment_expression "uVar12 = 0x18" identifier = number_literal) ;) (goto_statement "goto LAB_0012b923;" goto statement_identifier ;) })) (labeled_statement "LAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);" statement_identifier : (expression_statement "DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);" (assignment_expression "DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680)" identifier = (call_expression "FUN_00114ea0(param_1,puVar24,&DAT_00194680)" identifier (argument_list "(param_1,puVar24,&DAT_00194680)" ( identifier , identifier , (pointer_expression "&DAT_00194680" & identifier) )))) ;)) }) (else_clause "else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" else (compound_statement "{\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" { (if_statement "if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 0x10)" ( (binary_expression "*(long *)(puVar24 + 0xe) != 0x10" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }" { (expression_statement "uVar19 = 0x10;" (assignment_expression "uVar19 = 0x10" identifier = number_literal) ;) (expression_statement "uVar12 = 0x10;" (assignment_expression "uVar12 = 0x10" identifier = number_literal) ;) (labeled_statement "LAB_0012b923:\n              sprintf((char *)local_68,"%016lx");" statement_identifier : (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" identifier (argument_list "((char *)local_68,"%016lx")" ( (cast_expression "(char *)local_68" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016lx"" " string_content ") ))) ;)) (expression_statement "uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar13,uVar22,local_68);" (call_expression "error(uVar13,uVar22,local_68)" identifier (argument_list "(uVar13,uVar22,local_68)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier = (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar13,uVar19);" (call_expression "error(uVar13,uVar19)" identifier (argument_list "(uVar13,uVar19)" ( identifier , identifier ))) ;) (expression_statement "iVar7 = DAT_0019345c;" (assignment_expression "iVar7 = DAT_0019345c" identifier = identifier) ;) (expression_statement "*(undefined8 *)(puVar24 + 0xe) = uVar12;" (assignment_expression "*(undefined8 *)(puVar24 + 0xe) = uVar12" (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) = identifier) ;) (if_statement "if (iVar7 == 0) goto LAB_0012b7d2;" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012b7d2;" goto statement_identifier ;)) })) (expression_statement "DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);" (assignment_expression "DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680)" identifier = (call_expression "FUN_001149b0(param_1,puVar24,&DAT_00194680)" identifier (argument_list "(param_1,puVar24,&DAT_00194680)" ( identifier , identifier , (pointer_expression "&DAT_00194680" & identifier) )))) ;) }))) }) (else_clause "else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" else (compound_statement "{\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" { (labeled_statement "LAB_0012b69a:\n          dcgettext(0,pcVar14,5);" statement_identifier : (expression_statement "dcgettext(0,pcVar14,5);" (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal ))) ;)) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) }))) }) (else_clause "else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" else (compound_statement "{\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" { (expression_statement "bVar25 = uVar16 < 3;" (assignment_expression "bVar25 = uVar16 < 3" identifier = (binary_expression "uVar16 < 3" identifier < number_literal)) ;) (expression_statement "bVar28 = uVar16 == 3;" (assignment_expression "bVar28 = uVar16 == 3" identifier = (binary_expression "uVar16 == 3" identifier == number_literal)) ;) (if_statement "if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".dynstr";" (assignment_expression "pbVar21 = (byte *)".dynstr"" identifier = (cast_expression "(byte *)".dynstr"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".dynstr"" " string_content "))) ;) (do_statement "do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);" do (compound_statement "{\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (compound_statement "{\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }" { (if_statement "if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }" if (parenthesized_expression "(DAT_00194690 != 0)" ( (binary_expression "DAT_00194690 != 0" identifier != number_literal) )) (compound_statement "{\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }" { (expression_statement "pcVar14 = "File contains multiple dynamic string tables\n";" (assignment_expression "pcVar14 = "File contains multiple dynamic string tables\n"" identifier = (string_literal ""File contains multiple dynamic string tables\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b69a;" goto statement_identifier ;) })) (expression_statement "uVar12 = dcgettext(0,"dynamic strings",5);" (assignment_expression "uVar12 = dcgettext(0,"dynamic strings",5)" identifier = (call_expression "dcgettext(0,"dynamic strings",5)" identifier (argument_list "(0,"dynamic strings",5)" ( number_literal , (string_literal ""dynamic strings"" " string_content ") , number_literal )))) ;) (expression_statement "DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);" (assignment_expression "DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" identifier = (call_expression "FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" identifier (argument_list "(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" ( number_literal , (binary_expression "param_1 + 8" identifier + number_literal) , (binary_expression "param_1 + 0x10" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) , number_literal , (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) , identifier )))) ;) (expression_statement "DAT_00194688 = 0;" (assignment_expression "DAT_00194688 = 0" identifier = number_literal) ;) (if_statement "if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }" if (parenthesized_expression "(DAT_00194690 != 0)" ( (binary_expression "DAT_00194690 != 0" identifier != number_literal) )) (compound_statement "{\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }" { (expression_statement "DAT_00194688 = *(undefined8 *)(puVar24 + 8);" (assignment_expression "DAT_00194688 = *(undefined8 *)(puVar24 + 8)" identifier = (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) ))))) ;) })) }) (else_clause "else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" else (compound_statement "{\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" { (labeled_statement "LAB_0012b1ff:\n            bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);" (assignment_expression "bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" identifier = (binary_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" (parenthesized_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0)" ( (binary_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0" (parenthesized_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0)" ( (binary_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0" (parenthesized_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0)" ( (binary_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0" (parenthesized_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0)" ( (binary_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0" (parenthesized_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0)" ( (binary_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0" (parenthesized_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0)" ( (binary_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0" (parenthesized_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0)" ( (binary_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0" (parenthesized_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0)" ( (binary_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0" (parenthesized_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0)" ( (binary_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0" (parenthesized_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0)" ( (binary_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0" (parenthesized_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0)" ( (binary_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0" (parenthesized_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0)" ( (binary_expression "DAT_00196f40 == 0 && DAT_00196f5c == 0" (binary_expression "DAT_00196f40 == 0" identifier == number_literal) && (binary_expression "DAT_00196f5c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f38 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f68 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f30 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f34 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f6c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f28 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f3c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f60 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f48 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f7c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f74 == 0" identifier == number_literal)) )) && (parenthesized_expression "(DAT_00196f2c == 0 && DAT_0019346c == 0)" ( (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" identifier == number_literal) && (binary_expression "DAT_0019346c == 0" identifier == number_literal)) )))) ;) (if_statement "if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;" if (parenthesized_expression "(((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0))" ( (binary_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" (parenthesized_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0)" ( (binary_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0" (parenthesized_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0)" ( (binary_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0" (parenthesized_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0)" ( (binary_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0" (parenthesized_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0)" ( (binary_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0" (parenthesized_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0)" ( (binary_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0" (parenthesized_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0)" ( (binary_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0" (parenthesized_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0)" ( (binary_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0" (parenthesized_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0)" ( (binary_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0" (parenthesized_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0)" ( (binary_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0" (parenthesized_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0)" ( (binary_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0" (parenthesized_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0)" ( (binary_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0" (parenthesized_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0)" ( (binary_expression "DAT_00196f40 == 0 && DAT_00196f5c == 0" (binary_expression "DAT_00196f40 == 0" identifier == number_literal) && (binary_expression "DAT_00196f5c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f38 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f68 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f30 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f34 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f6c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f28 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f3c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f60 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f48 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f7c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f74 == 0" identifier == number_literal)) )) && (parenthesized_expression "(DAT_00196f2c == 0 && DAT_0019346c == 0)" ( (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" identifier == number_literal) && (binary_expression "DAT_0019346c == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_0012b2b0;" goto statement_identifier ;)) (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".debug_";" (assignment_expression "pbVar21 = (byte *)".debug_"" identifier = (cast_expression "(byte *)".debug_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_"" " string_content "))) ;) (do_statement "do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);" do (compound_statement "{\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }" { (labeled_statement "LAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;" statement_identifier : (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" identifier = (binary_expression "pbVar9 + 7" identifier + number_literal)) ;)) (if_statement "if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }" if (parenthesized_expression "(pbVar9[1] == 0x7a)" ( (binary_expression "pbVar9[1] == 0x7a" (subscript_expression "pbVar9[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                pbVar18 = pbVar9 + 8;\n              }" { (expression_statement "pbVar18 = pbVar9 + 8;" (assignment_expression "pbVar18 = pbVar9 + 8" identifier = (binary_expression "pbVar9 + 8" identifier + number_literal)) ;) })) (if_statement "if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }" if (parenthesized_expression "(DAT_0019346c == 0)" ( (binary_expression "DAT_0019346c == 0" identifier == number_literal) )) (compound_statement "{\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }" { (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar25 = DAT_00196f2c == 0;" (assignment_expression "bVar25 = DAT_00196f2c == 0" identifier = (binary_expression "DAT_00196f2c == 0" identifier == number_literal)) ;) (if_statement "if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }" { (labeled_statement "LAB_0012b446:\n                  bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f40 == 0;" (assignment_expression "bVar28 = DAT_00196f40 == 0" identifier = (binary_expression "DAT_00196f40 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }" { (expression_statement "lVar20 = 6;" (assignment_expression "lVar20 = 6" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1826c0;" (assignment_expression "pbVar21 = (byte *)0x1826c0" identifier = (cast_expression "(byte *)0x1826c0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f5c == 0;" (assignment_expression "bVar28 = DAT_00196f5c == 0" identifier = (binary_expression "DAT_00196f5c == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }" { (labeled_statement "LAB_0012b490:\n                    bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f38 == 0;" (assignment_expression "bVar28 = DAT_00196f38 == 0" identifier = (binary_expression "DAT_00196f38 == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }" { (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f68 == 0;" (assignment_expression "bVar28 = DAT_00196f68 == 0" identifier = (binary_expression "DAT_00196f68 == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }" { (labeled_statement "LAB_0012b4dd:\n                        bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f30 == 0;" (assignment_expression "bVar28 = DAT_00196f30 == 0" identifier = (binary_expression "DAT_00196f30 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1826ce;" (assignment_expression "pbVar21 = (byte *)0x1826ce" identifier = (cast_expression "(byte *)0x1826ce" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);" do (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f60 == 0;" (assignment_expression "bVar28 = DAT_00196f60 == 0" identifier = (binary_expression "DAT_00196f60 == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }" { (labeled_statement "LAB_0012b547:\n                          bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f34 == 0;" (assignment_expression "bVar28 = DAT_00196f34 == 0" identifier = (binary_expression "DAT_00196f34 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }" { (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x18246b;" (assignment_expression "pbVar21 = (byte *)0x18246b" identifier = (cast_expression "(byte *)0x18246b" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);" do (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f6c == 0;" (assignment_expression "bVar28 = DAT_00196f6c == 0" identifier = (binary_expression "DAT_00196f6c == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1824f6;" (assignment_expression "pbVar21 = (byte *)0x1824f6" identifier = (cast_expression "(byte *)0x1824f6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);" do (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;" if (parenthesized_expression "(((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))" ( (binary_expression "((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0)" (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) || (parenthesized_expression "(iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0)" ( (comma_expression "iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0" (assignment_expression "iVar8 = strncmp((char *)pbVar18,"macro",5)" identifier = (call_expression "strncmp((char *)pbVar18,"macro",5)" identifier (argument_list "((char *)pbVar18,"macro",5)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""macro"" " string_content ") , number_literal )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (if_statement "if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;" if (parenthesized_expression "(((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))" ( (binary_expression "((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))))" (parenthesized_expression "((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0))))" ( (binary_expression "(((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))" (parenthesized_expression "(((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))))))" ( (binary_expression "((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))" (parenthesized_expression "((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0))" ( (binary_expression "(iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)" (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"str",3)" identifier = (call_expression "strncmp((char *)pbVar18,"str",3)" identifier (argument_list "((char *)pbVar18,"str",3)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""str"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) ))) )) && (parenthesized_expression "((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))" ( (parenthesized_expression "(iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))))" ( (binary_expression "iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))" (binary_expression "iVar2 == 0" identifier == number_literal) || (parenthesized_expression "((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))" ( (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"loc",3)" identifier = (call_expression "strncmp((char *)pbVar18,"loc",3)" identifier (argument_list "((char *)pbVar18,"loc",3)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loc"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" (binary_expression "iVar7 != 0" identifier != number_literal) && (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"loclists",8)" identifier = (call_expression "strncmp((char *)pbVar18,"loclists",8)" identifier (argument_list "((char *)pbVar18,"loclists",8)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loclists"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) )))) )) ))) )) ))) )) && (parenthesized_expression "((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))" ( (parenthesized_expression "(iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0))" ( (binary_expression "iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)" (binary_expression "iVar3 == 0" identifier == number_literal) || (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"addr",4)" identifier = (call_expression "strncmp((char *)pbVar18,"addr",4)" identifier (argument_list "((char *)pbVar18,"addr",4)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""addr"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) ))) )) ))) )) && (parenthesized_expression "((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))))" ( (parenthesized_expression "(iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))" ( (binary_expression "iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))" (binary_expression "iVar4 == 0" identifier == number_literal) || (parenthesized_expression "((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))" ( (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"cu_index",8)" identifier = (call_expression "strncmp((char *)pbVar18,"cu_index",8)" identifier (argument_list "((char *)pbVar18,"cu_index",8)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""cu_index"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" (binary_expression "iVar7 != 0" identifier != number_literal) && (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"tu_index",8)" identifier = (call_expression "strncmp((char *)pbVar18,"tu_index",8)" identifier (argument_list "((char *)pbVar18,"tu_index",8)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""tu_index"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) )))) )) ))) )) ))) )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) }) (else_clause "else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" else (compound_statement "{\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" { (expression_statement "lVar20 = 6;" (assignment_expression "lVar20 = 6" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x185a13;" (assignment_expression "pbVar21 = (byte *)0x185a13" identifier = (cast_expression "(byte *)0x185a13" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);" do (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x182607;" (assignment_expression "pbVar21 = (byte *)0x182607" identifier = (cast_expression "(byte *)0x182607" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);" do (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b547;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" else (compound_statement "{\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1862bf;" (assignment_expression "pbVar21 = (byte *)0x1862bf" identifier = (cast_expression "(byte *)0x1862bf" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);" do (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (labeled_statement "joined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" statement_identifier : (if_statement "if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" { (expression_statement "pcVar14 = ".debug_gnu_pubtypes";" (assignment_expression "pcVar14 = ".debug_gnu_pubtypes"" identifier = (string_literal "".debug_gnu_pubtypes"" " string_content ")) ;) (labeled_statement "LAB_0012b4cb:\n                          bVar28 = false;" statement_identifier : (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;)) (expression_statement "lVar20 = 0xc;" (assignment_expression "lVar20 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)(pcVar14 + 7);" (assignment_expression "pbVar21 = (byte *)(pcVar14 + 7)" identifier = (cast_expression "(byte *)(pcVar14 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 7)" ( (binary_expression "pcVar14 + 7" identifier + number_literal) )))) ;) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);" do (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;" if (parenthesized_expression "((!bVar28 && !bVar25) != bVar28)" ( (binary_expression "(!bVar28 && !bVar25) != bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" ( (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b4dd;" goto statement_identifier ;)) }))) }))) }) (else_clause "else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" else (compound_statement "{\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1862ac;" (assignment_expression "pbVar21 = (byte *)0x1862ac" identifier = (cast_expression "(byte *)0x1862ac" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" do (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }" if (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" ( (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) != identifier) )) (compound_statement "{\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }" { (expression_statement "pcVar14 = ".debug_gnu_pubnames";" (assignment_expression "pcVar14 = ".debug_gnu_pubnames"" identifier = (string_literal "".debug_gnu_pubnames"" " string_content ")) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar25 = DAT_00196f68 == 0;" (assignment_expression "bVar25 = DAT_00196f68 == 0" identifier = (binary_expression "DAT_00196f68 == 0" identifier == number_literal)) ;) (if_statement "if (bVar25) goto LAB_0012b4cb;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012b4cb;" goto statement_identifier ;)) (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1862bf;" (assignment_expression "pbVar21 = (byte *)0x1862bf" identifier = (cast_expression "(byte *)0x1862bf" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);" do (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" identifier = (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" ( (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }" { (expression_statement "lVar20 = 0xc;" (assignment_expression "lVar20 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1824cd;" (assignment_expression "pbVar21 = (byte *)0x1824cd" identifier = (cast_expression "(byte *)0x1824cd" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);" do (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar25 = (!bVar26 && !bVar25) == bVar26;" (assignment_expression "bVar25 = (!bVar26 && !bVar25) == bVar26" identifier = (binary_expression "(!bVar26 && !bVar25) == bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (goto_statement "goto joined_r0x0012c500;" goto statement_identifier ;) })) })) }))) }) (else_clause "else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" else (compound_statement "{\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" { (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x182493;" (assignment_expression "pbVar21 = (byte *)0x182493" identifier = (cast_expression "(byte *)0x182493" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }" { (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x16ac78;" (assignment_expression "pbVar21 = (byte *)0x16ac78" identifier = (cast_expression "(byte *)0x16ac78" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);" do (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b490;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" else (compound_statement "{\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" { (expression_statement "lVar20 = 4;" (assignment_expression "lVar20 = 4" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1663a6;" (assignment_expression "pbVar21 = (byte *)0x1663a6" identifier = (cast_expression "(byte *)0x1663a6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);" do (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" identifier = (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" ( (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }" { (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1857df;" (assignment_expression "pbVar21 = (byte *)0x1857df" identifier = (cast_expression "(byte *)0x1857df" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b446;" goto statement_identifier ;)) })) }))) })) }) (else_clause "else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" else (compound_statement "{\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".zdebug_";" (assignment_expression "pbVar21 = (byte *)".zdebug_"" identifier = (cast_expression "(byte *)".zdebug_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".zdebug_"" " string_content "))) ;) (do_statement "do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);" do (compound_statement "{\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar18 < *pbVar21;" (assignment_expression "bVar26 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;" if (parenthesized_expression "((!bVar26 && !bVar25) == bVar26)" ( (binary_expression "(!bVar26 && !bVar25) == bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3f7;" goto statement_identifier ;)) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;" (assignment_expression "bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0" identifier = (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" identifier == number_literal) && (binary_expression "DAT_0019346c == 0" identifier == number_literal))) ;) (if_statement "if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }" { (labeled_statement "LAB_0012b2b0:\n                bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f34 == 0;" (assignment_expression "bVar28 = DAT_00196f34 == 0" identifier = (binary_expression "DAT_00196f34 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }" { (expression_statement "lVar20 = 10;" (assignment_expression "lVar20 = 10" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".eh_frame";" (assignment_expression "pbVar21 = (byte *)".eh_frame"" identifier = (cast_expression "(byte *)".eh_frame"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".eh_frame"" " string_content "))) ;) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);" do (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f78 == 0;" (assignment_expression "bVar28 = DAT_00196f78 == 0" identifier = (binary_expression "DAT_00196f78 == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }" { (labeled_statement "LAB_0012b31e:\n                  bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_0019346c == 0;" (assignment_expression "bVar28 = DAT_0019346c == 0" identifier = (binary_expression "DAT_0019346c == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }" { (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f64 == 0;" (assignment_expression "bVar28 = DAT_00196f64 == 0" identifier = (binary_expression "DAT_00196f64 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" do (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (compound_statement "{\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }" { (expression_statement "bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;" (assignment_expression "bVar25 = (byte *)0xfffffffffffffff8 < pbVar9" identifier = (binary_expression "(byte *)0xfffffffffffffff8 < pbVar9" (cast_expression "(byte *)0xfffffffffffffff8" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier)) ;) (expression_statement "bVar28 = pbVar9 + 7 == (byte *)0x0;" (assignment_expression "bVar28 = pbVar9 + 7 == (byte *)0x0" identifier = (binary_expression "pbVar9 + 7 == (byte *)0x0" (binary_expression "pbVar9 + 7" identifier + number_literal) == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" identifier = (binary_expression "pbVar9 + 7" identifier + number_literal)) ;) (expression_statement "pbVar21 = (byte *)0x1663a6;" (assignment_expression "pbVar21 = (byte *)0x1663a6" identifier = (cast_expression "(byte *)0x1663a6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);" do (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;" if (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" ( (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b36f;" goto statement_identifier ;)) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;) })) (labeled_statement "LAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;" statement_identifier : (expression_statement "bVar25 = DAT_00196f74 == 0;" (assignment_expression "bVar25 = DAT_00196f74 == 0" identifier = (binary_expression "DAT_00196f74 == 0" identifier == number_literal)) ;)) (if_statement "if (bVar25) goto LAB_0012ad90;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) (goto_statement "goto LAB_0012c536;" goto statement_identifier ;) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;" (assignment_expression "bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0" identifier = (binary_expression "DAT_00196f58 == 0 && DAT_00196f4c == 0" (binary_expression "DAT_00196f58 == 0" identifier == number_literal) && (binary_expression "DAT_00196f4c == 0" identifier == number_literal))) ;) (if_statement "if (bVar28) goto LAB_0012c5d2;" if (parenthesized_expression "(bVar28)" ( identifier )) (goto_statement "goto LAB_0012c5d2;" goto statement_identifier ;)) (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;" if (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" ( (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012c5d2;" goto statement_identifier ;)) (labeled_statement "LAB_0012b36f:\n                    bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f58 == 0;" (assignment_expression "bVar28 = DAT_00196f58 == 0" identifier = (binary_expression "DAT_00196f58 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" identifier = (binary_expression "pbVar9 + 7" identifier + number_literal)) ;) (expression_statement "pbVar21 = (byte *)0x1826c0;" (assignment_expression "pbVar21 = (byte *)0x1826c0" identifier = (cast_expression "(byte *)0x1826c0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" do (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = DAT_00196f4c == 0;" (assignment_expression "bVar25 = DAT_00196f4c == 0" identifier = (binary_expression "DAT_00196f4c == 0" identifier == number_literal)) ;) (if_statement "if (bVar25) goto LAB_0012ad90;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar9 + 7;" (assignment_expression "pbVar9 = pbVar9 + 7" identifier = (binary_expression "pbVar9 + 7" identifier + number_literal)) ;) (expression_statement "pcVar14 = (char *)(byte *)0x1826ce;" (assignment_expression "pcVar14 = (char *)(byte *)0x1826ce" identifier = (cast_expression "(char *)(byte *)0x1826ce" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(byte *)0x1826ce" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" else (compound_statement "{\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) (labeled_statement "LAB_0012c536:\n                    bVar28 = false;" statement_identifier : (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;)) (expression_statement "lVar20 = 0xe;" (assignment_expression "lVar20 = 0xe" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".gnu_debuglink";" (assignment_expression "pbVar21 = (byte *)".gnu_debuglink"" identifier = (cast_expression "(byte *)".gnu_debuglink"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu_debuglink"" " string_content "))) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar18 < *pbVar21;" (assignment_expression "bVar28 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" identifier = (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" ( (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) (expression_statement "lVar20 = 0x11;" (assignment_expression "lVar20 = 0x11" identifier = number_literal) ;) (expression_statement "pcVar14 = ".gnu_debugaltlink";" (assignment_expression "pcVar14 = ".gnu_debugaltlink"" identifier = (string_literal "".gnu_debugaltlink"" " string_content ")) ;) }))) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);" do (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < (byte)*pcVar14;" (assignment_expression "bVar26 = *pbVar9 < (byte)*pcVar14" identifier = (binary_expression "*pbVar9 < (byte)*pcVar14" (pointer_expression "*pbVar9" * identifier) < (binary_expression "(byte)*pcVar14" (parenthesized_expression "(byte)" ( identifier )) * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pcVar14;" (assignment_expression "bVar25 = *pbVar9 == *pcVar14" identifier = (binary_expression "*pbVar9 == *pcVar14" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pcVar14" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);" (assignment_expression "pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" identifier = (cast_expression "(char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" ( (binary_expression "(byte *)pcVar14 + (ulong)bVar30 * -2 + 1" (binary_expression "(byte *)pcVar14 + (ulong)bVar30 * -2" (cast_expression "(byte *)pcVar14" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) }) (else_clause "else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" else (compound_statement "{\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" { (expression_statement "lVar20 = 0xb;" (assignment_expression "lVar20 = 0xb" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".gdb_index";" (assignment_expression "pbVar21 = (byte *)".gdb_index"" identifier = (cast_expression "(byte *)".gdb_index"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gdb_index"" " string_content "))) ;) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);" do (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }" { (expression_statement "lVar20 = 0xd;" (assignment_expression "lVar20 = 0xd" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".debug_names";" (assignment_expression "pbVar21 = (byte *)".debug_names"" identifier = (cast_expression "(byte *)".debug_names"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_names"" " string_content "))) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar18 < *pbVar21;" (assignment_expression "bVar26 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b31e;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" else (compound_statement "{\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" { (expression_statement "lVar20 = 0x11;" (assignment_expression "lVar20 = 0x11" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".gnu.linkonce.wi.";" (assignment_expression "pbVar21 = (byte *)".gnu.linkonce.wi."" identifier = (cast_expression "(byte *)".gnu.linkonce.wi."" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu.linkonce.wi."" " string_content "))) ;) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);" do (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;" if (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" ( (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b2b0;" goto statement_identifier ;)) }))) }))) (labeled_statement "LAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);" statement_identifier : (expression_statement "FUN_00111440(param_1,uVar22,4);" (call_expression "FUN_00111440(param_1,uVar22,4)" identifier (argument_list "(param_1,uVar22,4)" ( identifier , identifier , number_literal ))) ;)) }))) }) (else_clause "else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar16 == 0x12)" ( (binary_expression "uVar16 == 0x12" identifier == number_literal) )) (compound_statement "{\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }" { (expression_statement "puVar11 = (undefined8 *)FUN_001594b0();" (assignment_expression "puVar11 = (undefined8 *)FUN_001594b0()" identifier = (cast_expression "(undefined8 *)FUN_001594b0()" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_001594b0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*puVar11 = puVar24;" (assignment_expression "*puVar11 = puVar24" (pointer_expression "*puVar11" * identifier) = identifier) ;) (expression_statement "puVar11[1] = DAT_001934b0;" (assignment_expression "puVar11[1] = DAT_001934b0" (subscript_expression "puVar11[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "DAT_001934b0 = puVar11;" (assignment_expression "DAT_001934b0 = puVar11" identifier = identifier) ;) }) (else_clause "else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar16 == 2)" ( (binary_expression "uVar16 == 2" identifier == number_literal) )) (compound_statement "{\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" { (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10" identifier = (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(DAT_0019345c == 0) & 8)" ( (binary_expression "-(uint)(DAT_0019345c == 0) & 8" (unary_expression "-(uint)(DAT_0019345c == 0)" - (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" ( (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != identifier) )) (goto_statement "goto LAB_0012b6ee;" goto statement_identifier ;)) }) (else_clause "else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar16 == 0x11)" ( (binary_expression "uVar16 == 0x11" identifier == number_literal) )) (compound_statement "{\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }" { (if_statement "if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 4)" ( (binary_expression "*(long *)(puVar24 + 0xe) != 4" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }" { (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" identifier (argument_list "((char *)local_68,"%016lx")" ( (cast_expression "(char *)local_68" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016lx"" " string_content ") ))) ;) (expression_statement "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar12,uVar22,local_68);" (call_expression "error(uVar12,uVar22,local_68)" identifier (argument_list "(uVar12,uVar22,local_68)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier = (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar12,4);" (call_expression "error(uVar12,4)" identifier (argument_list "(uVar12,4)" ( identifier , number_literal ))) ;) (expression_statement "puVar24[0xe] = 4;" (assignment_expression "puVar24[0xe] = 4" (subscript_expression "puVar24[0xe]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar24[0xf] = 0;" (assignment_expression "puVar24[0xf] = 0" (subscript_expression "puVar24[0xf]" identifier [ number_literal ]) = number_literal) ;) })) }) (else_clause "else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar16 == 9)" ( (binary_expression "uVar16 == 9" identifier == number_literal) )) (compound_statement "{\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }" { (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8" identifier = (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(DAT_0019345c == 0) & 8)" ( (binary_expression "-(uint)(DAT_0019345c == 0) & 8" (unary_expression "-(uint)(DAT_0019345c == 0)" - (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" ( (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != identifier) )) (compound_statement "{\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }" { (labeled_statement "LAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");" statement_identifier : (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" identifier (argument_list "((char *)local_68,"%016lx")" ( (cast_expression "(char *)local_68" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016lx"" " string_content ") ))) ;)) (expression_statement "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar12,uVar22,local_68);" (call_expression "error(uVar12,uVar22,local_68)" identifier (argument_list "(uVar12,uVar22,local_68)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier = (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar12,lVar20);" (call_expression "error(uVar12,lVar20)" identifier (argument_list "(uVar12,lVar20)" ( identifier , identifier ))) ;) (expression_statement "*(long *)(puVar24 + 0xe) = lVar20;" (assignment_expression "*(long *)(puVar24 + 0xe) = lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) = identifier) ;) })) }) (else_clause "else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (compound_statement "{\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" { (if_statement "if (uVar16 != 4) goto LAB_0012b1ff;" if (parenthesized_expression "(uVar16 != 4)" ( (binary_expression "uVar16 != 4" identifier != number_literal) )) (goto_statement "goto LAB_0012b1ff;" goto statement_identifier ;)) (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc" identifier = (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 0xc)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(DAT_0019345c == 0) & 0xc)" ( (binary_expression "-(uint)(DAT_0019345c == 0) & 0xc" (unary_expression "-(uint)(DAT_0019345c == 0)" - (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" ( (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != identifier) )) (goto_statement "goto LAB_0012b6ee;" goto statement_identifier ;)) }))))))))))) }))) (labeled_statement "LAB_0012ad90:\n      uVar22 = uVar22 + 1;" statement_identifier : (expression_statement "uVar22 = uVar22 + 1;" (assignment_expression "uVar22 = uVar22 + 1" identifier = (binary_expression "uVar22 + 1" identifier + number_literal)) ;)) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" identifier = (binary_expression "puVar24 + 0x14" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" ( (binary_expression "uVar22 < *(uint *)(param_1 + 100)" identifier < (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) )) ;) (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" if (parenthesized_expression "(DAT_00193494 == 0)" ( (binary_expression "DAT_00193494 == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (if_statement "if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;" if (parenthesized_expression "(*(uint *)(param_1 + 100) < 2)" ( (binary_expression "*(uint *)(param_1 + 100) < 2" (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) )))) < number_literal) )) (goto_statement "goto LAB_0012c296;" goto statement_identifier ;)) (expression_statement "pcVar14 = "\nSection Headers:\n";" (assignment_expression "pcVar14 = "\nSection Headers:\n"" identifier = (string_literal ""\nSection Headers:\n"" " escape_sequence string_content escape_sequence ")) ;) })))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar14,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (if_statement "if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" if (parenthesized_expression "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )) (compound_statement "{\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }" { (if_statement "if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" if (parenthesized_expression "(DAT_00196f50 == 0)" ( (binary_expression "DAT_00196f50 == 0" identifier == number_literal) )) (compound_statement "{\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }" { (if_statement "if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }" { (expression_statement "pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" identifier (argument_list "(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" ( number_literal , (string_literal ""  [Nr] Name              Type             Address           Offset\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";" (assignment_expression "pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n"" identifier = (string_literal ""       Size              EntSize          Flags  Link  Info  Align\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" else (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" identifier (argument_list "(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" ( number_literal , (string_literal ""       Type              Address          Offset            Link\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = "       Size              EntSize          Info              Align\n";" (assignment_expression "pcVar14 = "       Size              EntSize          Info              Align\n"" identifier = (string_literal ""       Size              EntSize          Info              Align\n"" " string_content escape_sequence ")) ;) }))) }) (else_clause "else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" else (compound_statement "{\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" { (expression_statement "pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";" (assignment_expression "pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"" identifier = (string_literal ""  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"" " string_content escape_sequence ")) ;) (if_statement "if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }" if (parenthesized_expression "(DAT_0019348c != 0)" ( (binary_expression "DAT_0019348c != 0" identifier != number_literal) )) (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";" (assignment_expression "pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n"" identifier = (string_literal ""       Type            Address          Off    Size   ES   Lk Inf Al\n"" " string_content escape_sequence ")) ;) })) }))) }) (else_clause "else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" else (compound_statement "{\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" { (expression_statement "pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";" (assignment_expression "pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"" identifier = (string_literal ""  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"" " string_content escape_sequence ")) ;) (if_statement "if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }" if (parenthesized_expression "(DAT_0019348c != 0)" ( (binary_expression "DAT_0019348c != 0" identifier != number_literal) )) (compound_statement "{\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";" (assignment_expression "pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n"" identifier = (string_literal ""       Type            Addr     Off    Size   ES   Lk Inf Al\n"" " string_content escape_sequence ")) ;) })) }))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar14,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (if_statement "if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }" { (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (if_statement "if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }" if (parenthesized_expression "(uVar22 != 0)" ( (binary_expression "uVar22 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }" { (labeled_statement "LAB_0012ae50:\n      uVar17 = 0;" statement_identifier : (expression_statement "uVar17 = 0;" (assignment_expression "uVar17 = 0" identifier = number_literal) ;)) (labeled_statement "LAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);" statement_identifier : (do_statement "do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);" do (compound_statement "{\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      }" { (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }" if (parenthesized_expression "(uVar16 < 0x11)" ( (binary_expression "uVar16 < 0x11" identifier < number_literal) )) (compound_statement "{\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }" { (if_statement "if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }" if (parenthesized_expression "(uVar16 < 0xe)" ( (binary_expression "uVar16 < 0xe" identifier < number_literal) )) (compound_statement "{\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }" { (if_statement "if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" if (parenthesized_expression "(uVar16 < 6)" ( (binary_expression "uVar16 < 6" identifier < number_literal) )) (compound_statement "{\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }" { (if_statement "if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" if (parenthesized_expression "(uVar16 < 4)" ( (binary_expression "uVar16 < 4" identifier < number_literal) )) (compound_statement "{\n                if (uVar16 == 2) goto LAB_0012b074;\n              }" { (if_statement "if (uVar16 == 2) goto LAB_0012b074;" if (parenthesized_expression "(uVar16 == 2)" ( (binary_expression "uVar16 == 2" identifier == number_literal) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" else (compound_statement "{\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" { (labeled_statement "LAB_0012bb47:\n                uVar23 = puVar24[10];" statement_identifier : (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;)) (if_statement "if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }" if (parenthesized_expression "(((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb))))" ( (binary_expression "((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))" (parenthesized_expression "((uVar23 == 0) || (uVar22 <= uVar23))" ( (binary_expression "(uVar23 == 0) || (uVar22 <= uVar23)" (parenthesized_expression "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar22 <= uVar23)" ( (binary_expression "uVar22 <= uVar23" identifier <= identifier) ))) )) || (parenthesized_expression "((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))" ( (parenthesized_expression "(iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb))" ( (comma_expression "iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)" (assignment_expression "iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" identifier = (pointer_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" * (cast_expression "(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar23 * 0x50" (cast_expression "(ulong)uVar23" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) + (pointer_expression "*(long *)(param_1 + 0x70)" * (cast_expression "(long *)(param_1 + 0x70)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) + number_literal) ))))) , (binary_expression "iVar7 != 2 && (iVar7 != 0xb)" (binary_expression "iVar7 != 2" identifier != number_literal) && (parenthesized_expression "(iVar7 != 0xb)" ( (binary_expression "iVar7 != 0xb" identifier != number_literal) )))) )) ))) )) (compound_statement "{\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }" { (expression_statement "pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";" (assignment_expression "pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n"" identifier = (string_literal ""[%2u]: Link field (%u) should index a symtab section.\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b0a7;" goto statement_identifier ;) })) }))) }) (else_clause "else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" else (compound_statement "{\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" { (if_statement "if (uVar16 == 9) goto LAB_0012bb47;" if (parenthesized_expression "(uVar16 == 9)" ( (binary_expression "uVar16 == 9" identifier == number_literal) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) (if_statement "if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;" if (parenthesized_expression "((uVar16 == 0xb) || (uVar16 == 6))" ( (binary_expression "(uVar16 == 0xb) || (uVar16 == 6)" (parenthesized_expression "(uVar16 == 0xb)" ( (binary_expression "uVar16 == 0xb" identifier == number_literal) )) || (parenthesized_expression "(uVar16 == 6)" ( (binary_expression "uVar16 == 6" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) }))) (goto_statement "goto joined_r0x0012ae86;" goto statement_identifier ;) })) (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;) (if_statement "if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }" if (parenthesized_expression "(uVar23 != 0)" ( (binary_expression "uVar23 != 0" identifier != number_literal) )) (compound_statement "{\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }" { (expression_statement "pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";" (assignment_expression "pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n"" identifier = (string_literal ""[%2u]: Unexpected value (%u) in link field.\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b0a7;" goto statement_identifier ;) })) (labeled_statement "LAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);" statement_identifier : (expression_statement "uVar10 = 1L << ((byte)uVar16 & 0x3f);" (assignment_expression "uVar10 = 1L << ((byte)uVar16 & 0x3f)" identifier = (binary_expression "1L << ((byte)uVar16 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar16 & 0x3f)" ( (binary_expression "(byte)uVar16 & 0x3f" (cast_expression "(byte)uVar16" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;)) (if_statement "if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;" if (parenthesized_expression "((uVar10 & 0x20804) != 0)" ( (binary_expression "(uVar10 & 0x20804) != 0" (parenthesized_expression "(uVar10 & 0x20804)" ( (binary_expression "uVar10 & 0x20804" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (if_statement "if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" if (parenthesized_expression "((uVar10 & 0x5c060) == 0)" ( (binary_expression "(uVar10 & 0x5c060) == 0" (parenthesized_expression "(uVar10 & 0x5c060)" ( (binary_expression "uVar10 & 0x5c060" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }" { (if_statement "if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }" if (parenthesized_expression "((uVar10 & 0x210) == 0)" ( (binary_expression "(uVar10 & 0x210) == 0" (parenthesized_expression "(uVar10 & 0x210)" ( (binary_expression "uVar10 & 0x210" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }" { (if_statement "if (uVar16 == 8) goto LAB_0012aef0;" if (parenthesized_expression "(uVar16 == 8)" ( (binary_expression "uVar16 == 8" identifier == number_literal) )) (goto_statement "goto LAB_0012aef0;" goto statement_identifier ;)) (expression_statement "uVar10 = *(ulong *)(puVar24 + 2);" (assignment_expression "uVar10 = *(ulong *)(puVar24 + 2)" identifier = (pointer_expression "*(ulong *)(puVar24 + 2)" * (cast_expression "(ulong *)(puVar24 + 2)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) ))))) ;) (if_statement "if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;" if (parenthesized_expression "((uVar10 & 0x40) == 0)" ( (binary_expression "(uVar10 & 0x40) == 0" (parenthesized_expression "(uVar10 & 0x40)" ( (binary_expression "uVar10 & 0x40" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012bf7c;" goto statement_identifier ;)) (goto_statement "goto LAB_0012ae98;" goto statement_identifier ;) })) (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" identifier = (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ;) (if_statement "if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" if (parenthesized_expression "(uVar22 == 0)" ( (binary_expression "uVar22 == 0" identifier == number_literal) )) (compound_statement "{\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }" { (if_statement "if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;" if (parenthesized_expression "((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2)" ( (binary_expression "(ushort)(*(short *)(param_1 + 0x50) - 2U) < 2" (call_expression "(ushort)(*(short *)(param_1 + 0x50) - 2U)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(*(short *)(param_1 + 0x50) - 2U)" ( (binary_expression "*(short *)(param_1 + 0x50) - 2U" (pointer_expression "*(short *)(param_1 + 0x50)" * (cast_expression "(short *)(param_1 + 0x50)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) - number_literal) ))) < number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "uVar10 = *(ulong *)(param_1 + 0x80);" (assignment_expression "uVar10 = *(ulong *)(param_1 + 0x80)" identifier = (pointer_expression "*(ulong *)(param_1 + 0x80)" * (cast_expression "(ulong *)(param_1 + 0x80)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) ))))) ;) (if_statement "if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" if (parenthesized_expression "(uVar10 == 0)" ( (binary_expression "uVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) (labeled_statement "LAB_0012c57f:\n                lVar20 = 9;" statement_identifier : (expression_statement "lVar20 = 9;" (assignment_expression "lVar20 = 9" identifier = number_literal) ;)) (expression_statement "pbVar18 = (byte *)".rel.dyn";" (assignment_expression "pbVar18 = (byte *)".rel.dyn"" identifier = (cast_expression "(byte *)".rel.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rel.dyn"" " string_content "))) ;) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);" do (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "uVar27 = *pbVar9 < *pbVar18;" (assignment_expression "uVar27 = *pbVar9 < *pbVar18" identifier = (binary_expression "*pbVar9 < *pbVar18" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar18" * identifier))) ;) (expression_statement "uVar29 = *pbVar9 == *pbVar18;" (assignment_expression "uVar29 = *pbVar9 == *pbVar18" identifier = (binary_expression "*pbVar9 == *pbVar18" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar18" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "((bool)uVar29)" ( (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (if_statement "if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;" if (parenthesized_expression "((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27)" ( (binary_expression "(!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27" (parenthesized_expression "(!(bool)uVar27 && !(bool)uVar29)" ( (binary_expression "!(bool)uVar27 && !(bool)uVar29" (unary_expression "!(bool)uVar27" ! (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar29" ! (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "uVar10 = *(ulong *)(param_1 + 0x80);" (assignment_expression "uVar10 = *(ulong *)(param_1 + 0x80)" identifier = (pointer_expression "*(ulong *)(param_1 + 0x80)" * (cast_expression "(ulong *)(param_1 + 0x80)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) ))))) ;) (if_statement "if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" if (parenthesized_expression "(uVar10 == 0)" ( (binary_expression "uVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" else (compound_statement "{\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" { (expression_statement "uVar15 = (ulong)*puVar24;" (assignment_expression "uVar15 = (ulong)*puVar24" identifier = (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) ;) (if_statement "if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" if (parenthesized_expression "(uVar15 < *(ulong *)(param_1 + 0x88))" ( (binary_expression "uVar15 < *(ulong *)(param_1 + 0x88)" identifier < (pointer_expression "*(ulong *)(param_1 + 0x88)" * (cast_expression "(ulong *)(param_1 + 0x88)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) ))))) )) (compound_statement "{\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }" { (expression_statement "uVar27 = CARRY8(uVar10,uVar15);" (assignment_expression "uVar27 = CARRY8(uVar10,uVar15)" identifier = (call_expression "CARRY8(uVar10,uVar15)" identifier (argument_list "(uVar10,uVar15)" ( identifier , identifier )))) ;) (expression_statement "pbVar9 = (byte *)(uVar10 + uVar15);" (assignment_expression "pbVar9 = (byte *)(uVar10 + uVar15)" identifier = (cast_expression "(byte *)(uVar10 + uVar15)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar10 + uVar15)" ( (binary_expression "uVar10 + uVar15" identifier + identifier) )))) ;) (expression_statement "uVar29 = pbVar9 == (byte *)0x0;" (assignment_expression "uVar29 = pbVar9 == (byte *)0x0" identifier = (binary_expression "pbVar9 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" else (compound_statement "{\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) }))) }))) }) (else_clause "else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" else (compound_statement "{\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" { (expression_statement "uVar15 = (ulong)*puVar24;" (assignment_expression "uVar15 = (ulong)*puVar24" identifier = (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) ;) (if_statement "if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }" if (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= uVar15)" ( (binary_expression "*(ulong *)(param_1 + 0x88) <= uVar15" (pointer_expression "*(ulong *)(param_1 + 0x88)" * (cast_expression "(ulong *)(param_1 + 0x88)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) <= identifier) )) (compound_statement "{\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) (goto_statement "goto LAB_0012c57f;" goto statement_identifier ;) })) (expression_statement "bVar25 = CARRY8(uVar10,uVar15);" (assignment_expression "bVar25 = CARRY8(uVar10,uVar15)" identifier = (call_expression "CARRY8(uVar10,uVar15)" identifier (argument_list "(uVar10,uVar15)" ( identifier , identifier )))) ;) (expression_statement "pbVar9 = (byte *)(uVar10 + uVar15);" (assignment_expression "pbVar9 = (byte *)(uVar10 + uVar15)" identifier = (cast_expression "(byte *)(uVar10 + uVar15)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar10 + uVar15)" ( (binary_expression "uVar10 + uVar15" identifier + identifier) )))) ;) (expression_statement "bVar28 = pbVar9 == (byte *)0x0;" (assignment_expression "bVar28 = pbVar9 == (byte *)0x0" identifier = (binary_expression "pbVar9 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "lVar20 = 9;" (assignment_expression "lVar20 = 9" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".rel.dyn";" (assignment_expression "pbVar21 = (byte *)".rel.dyn"" identifier = (cast_expression "(byte *)".rel.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rel.dyn"" " string_content "))) ;) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);" do (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "uVar29 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if ((bool)uVar29) goto LAB_0012aec8;" if (parenthesized_expression "((bool)uVar29)" ( (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) }))) (expression_statement "lVar20 = 10;" (assignment_expression "lVar20 = 10" identifier = number_literal) ;) (expression_statement "pbVar18 = (byte *)".rela.dyn";" (assignment_expression "pbVar18 = (byte *)".rela.dyn"" identifier = (cast_expression "(byte *)".rela.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rela.dyn"" " string_content "))) ;) (do_statement "do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);" do (compound_statement "{\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "uVar27 = *pbVar9 < *pbVar18;" (assignment_expression "uVar27 = *pbVar9 < *pbVar18" identifier = (binary_expression "*pbVar9 < *pbVar18" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar18" * identifier))) ;) (expression_statement "uVar29 = *pbVar9 == *pbVar18;" (assignment_expression "uVar29 = *pbVar9 == *pbVar18" identifier = (binary_expression "*pbVar9 == *pbVar18" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar18" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "((bool)uVar29)" ( (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (if_statement "if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;" if (parenthesized_expression "((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27)" ( (binary_expression "(!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27" (parenthesized_expression "(!(bool)uVar27 && !(bool)uVar29)" ( (binary_expression "!(bool)uVar27 && !(bool)uVar29" (unary_expression "!(bool)uVar27" ! (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar29" ! (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" identifier = (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ;) }) (else_clause "else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" else (if_statement "if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" if (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" ( (binary_expression "uVar22 < *(uint *)(param_1 + 100)" identifier < (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) )) (compound_statement "{\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" { (expression_statement "uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);" (assignment_expression "uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" identifier = (pointer_expression "*(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" * (cast_expression "(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (binary_expression "(ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar22 * 0x50" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) + (pointer_expression "*(long *)(param_1 + 0x70)" * (cast_expression "(long *)(param_1 + 0x70)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) + number_literal) ))))) ;) (expression_statement "bVar5 = 1;" (assignment_expression "bVar5 = 1" identifier = number_literal) ;) (if_statement "if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }" if (parenthesized_expression "(uVar16 < 0xf)" ( (binary_expression "uVar16 < 0xf" identifier < number_literal) )) (compound_statement "{\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }" { (expression_statement "bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;" (assignment_expression "bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1" identifier = (binary_expression "~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1" (unary_expression "~(byte)(0x4182L >> ((byte)uVar16 & 0x3f))" ~ (call_expression "(byte)(0x4182L >> ((byte)uVar16 & 0x3f))" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(0x4182L >> ((byte)uVar16 & 0x3f))" ( (binary_expression "0x4182L >> ((byte)uVar16 & 0x3f)" number_literal >> (parenthesized_expression "((byte)uVar16 & 0x3f)" ( (binary_expression "(byte)uVar16 & 0x3f" (cast_expression "(byte)uVar16" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) )))) & number_literal)) ;) })) (if_statement "if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;" if (parenthesized_expression "((0x5fffffff < uVar16) || (bVar5 == 0))" ( (binary_expression "(0x5fffffff < uVar16) || (bVar5 == 0)" (parenthesized_expression "(0x5fffffff < uVar16)" ( (binary_expression "0x5fffffff < uVar16" number_literal < identifier) )) || (parenthesized_expression "(bVar5 == 0)" ( (binary_expression "bVar5 == 0" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) })))) (expression_statement "pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";" (assignment_expression "pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n"" identifier = (string_literal ""[%2u]: Info field (%u) should index a relocatable section.\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" else (compound_statement "{\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" { (labeled_statement "LAB_0012bf87:\n            uVar22 = puVar24[0xb];" statement_identifier : (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" identifier = (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ;)) (if_statement "if (uVar22 == 0) goto LAB_0012aec8;" if (parenthesized_expression "(uVar22 == 0)" ( (binary_expression "uVar22 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";" (assignment_expression "pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n"" identifier = (string_literal ""[%2u]: Unexpected value (%u) in info field.\n"" " string_content escape_sequence ")) ;) }))) (expression_statement "uVar12 = dcgettext(0,pcVar14,5);" (assignment_expression "uVar12 = dcgettext(0,pcVar14,5)" identifier = (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal )))) ;) (expression_statement "warn(uVar12,uVar17,uVar22);" (call_expression "warn(uVar12,uVar17,uVar22)" identifier (argument_list "(uVar12,uVar17,uVar22)" ( identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;) })) (if_statement "if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(uVar16 == 0x6ffffff7)" ( (binary_expression "uVar16 == 0x6ffffff7" identifier == number_literal) )) (compound_statement "{\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }" { (labeled_statement "LAB_0012b074:\n          uVar23 = puVar24[10];" statement_identifier : (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;)) (if_statement "if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }" if (parenthesized_expression "(((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3))" ( (binary_expression "((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)" (parenthesized_expression "((uVar23 == 0) || (uVar22 <= uVar23))" ( (binary_expression "(uVar23 == 0) || (uVar22 <= uVar23)" (parenthesized_expression "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar22 <= uVar23)" ( (binary_expression "uVar22 <= uVar23" identifier <= identifier) ))) )) || (parenthesized_expression "(*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)" ( (binary_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3" (pointer_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" * (cast_expression "(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar23 * 0x50" (cast_expression "(ulong)uVar23" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) + (pointer_expression "*(long *)(param_1 + 0x70)" * (cast_expression "(long *)(param_1 + 0x70)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }" { (expression_statement "pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";" (assignment_expression "pcVar14 = "[%2u]: Link field (%u) should index a string section.\n"" identifier = (string_literal ""[%2u]: Link field (%u) should index a string section.\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);" statement_identifier : (expression_statement "uVar12 = dcgettext(0,pcVar14,5);" (assignment_expression "uVar12 = dcgettext(0,pcVar14,5)" identifier = (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "warn(uVar12,uVar17,uVar23);" (call_expression "warn(uVar12,uVar17,uVar23)" identifier (argument_list "(uVar12,uVar17,uVar23)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) })) }) (else_clause "else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" else (if_statement "if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(uVar16 < 0x6ffffff8)" ( (binary_expression "uVar16 < 0x6ffffff8" identifier < number_literal) )) (compound_statement "{\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }" { (if_statement "if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;" if (parenthesized_expression "((uVar16 < 0x13) || (uVar16 == 0x6ffffff6))" ( (binary_expression "(uVar16 < 0x13) || (uVar16 == 0x6ffffff6)" (parenthesized_expression "(uVar16 < 0x13)" ( (binary_expression "uVar16 < 0x13" identifier < number_literal) )) || (parenthesized_expression "(uVar16 == 0x6ffffff6)" ( (binary_expression "uVar16 == 0x6ffffff6" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) }) (else_clause "else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" else (if_statement "if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(0x6ffffffc < uVar16)" ( (binary_expression "0x6ffffffc < uVar16" number_literal < identifier) )) (compound_statement "{\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" { (if_statement "if (uVar16 < 0x6fffffff) goto LAB_0012b074;" if (parenthesized_expression "(uVar16 < 0x6fffffff)" ( (binary_expression "uVar16 < 0x6fffffff" identifier < number_literal) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) (if_statement "if (uVar16 == 0x6fffffff) goto LAB_0012bb47;" if (parenthesized_expression "(uVar16 == 0x6fffffff)" ( (binary_expression "uVar16 == 0x6fffffff" identifier == number_literal) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) })))))) (labeled_statement "joined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;" statement_identifier : (if_statement "if (uVar16 < 0x13) goto LAB_0012b0ca;" if (parenthesized_expression "(uVar16 < 0x13)" ( (binary_expression "uVar16 < 0x13" identifier < number_literal) )) (goto_statement "goto LAB_0012b0ca;" goto statement_identifier ;))) (expression_statement "uVar10 = *(ulong *)(puVar24 + 2);" (assignment_expression "uVar10 = *(ulong *)(puVar24 + 2)" identifier = (pointer_expression "*(ulong *)(puVar24 + 2)" * (cast_expression "(ulong *)(puVar24 + 2)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) ))))) ;) (if_statement "if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" if (parenthesized_expression "((uVar10 & 0x40) == 0)" ( (binary_expression "(uVar10 & 0x40) == 0" (parenthesized_expression "(uVar10 & 0x40)" ( (binary_expression "uVar10 & 0x40" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }" { (if_statement "if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }" if (parenthesized_expression "(uVar16 < 0x60000000)" ( (binary_expression "uVar16 < 0x60000000" identifier < number_literal) )) (compound_statement "{\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }" { (labeled_statement "LAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;" statement_identifier : (if_statement "if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;" if (parenthesized_expression "((uVar10 & 0x1000000) == 0)" ( (binary_expression "(uVar10 & 0x1000000) == 0" (parenthesized_expression "(uVar10 & 0x1000000)" ( (binary_expression "uVar10 & 0x1000000" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012bf87;" goto statement_identifier ;))) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;) })) }) (else_clause "else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" else (compound_statement "{\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" { (labeled_statement "LAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" statement_identifier : (if_statement "if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" if (parenthesized_expression "((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb]))" ( (binary_expression "(puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])" (parenthesized_expression "(puVar24[0xb] == 0)" ( (binary_expression "puVar24[0xb] == 0" (subscript_expression "puVar24[0xb]" identifier [ number_literal ]) == number_literal) )) || (parenthesized_expression "(*(uint *)(param_1 + 100) <= puVar24[0xb])" ( (binary_expression "*(uint *)(param_1 + 100) <= puVar24[0xb]" (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) )))) <= (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ))) )) (compound_statement "{\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" { (expression_statement "uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);" (assignment_expression "uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5)" identifier = (call_expression "dcgettext(0,"[%2u]: Expected link to another section in info field",5)" identifier (argument_list "(0,"[%2u]: Expected link to another section in info field",5)" ( number_literal , (string_literal ""[%2u]: Expected link to another section in info field"" " string_content ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar17);" (call_expression "warn(uVar12,uVar17)" identifier (argument_list "(uVar12,uVar17)" ( identifier , identifier ))) ;) }))) (labeled_statement "LAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" statement_identifier : (if_statement "if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" if (parenthesized_expression "(((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8))" ( (binary_expression "((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)" (parenthesized_expression "((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff))" ( (binary_expression "(*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)" (parenthesized_expression "(*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8))" ( (binary_expression "*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)" (pointer_expression "*(ulong *)(param_1 + 0x10)" * (cast_expression "(ulong *)(param_1 + 0x10)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) < (pointer_expression "*(ulong *)(puVar24 + 8)" * (cast_expression "(ulong *)(puVar24 + 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) ))))) )) && (parenthesized_expression "(puVar24[1] - 1 < 0x5fffffff)" ( (binary_expression "puVar24[1] - 1 < 0x5fffffff" (binary_expression "puVar24[1] - 1" (subscript_expression "puVar24[1]" identifier [ number_literal ]) - number_literal) < number_literal) ))) )) && (parenthesized_expression "(puVar24[1] != 8)" ( (binary_expression "puVar24[1] != 8" (subscript_expression "puVar24[1]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" { (expression_statement "uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" identifier = (call_expression "dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" identifier (argument_list "(0,"Size of section %u is larger than the entire file!\n",5)" ( number_literal , (string_literal ""Size of section %u is larger than the entire file!\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar17);" (call_expression "warn(uVar12,uVar17)" identifier (argument_list "(uVar12,uVar17)" ( identifier , identifier ))) ;) }))) }))) (labeled_statement "LAB_0012aef0:\n        printf("  [%2u] ",uVar17);" statement_identifier : (expression_statement "printf("  [%2u] ",uVar17);" (call_expression "printf("  [%2u] ",uVar17)" identifier (argument_list "("  [%2u] ",uVar17)" ( (string_literal ""  [%2u] "" " string_content ") , identifier ))) ;)) (if_statement "if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }" { (if_statement "if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" if (parenthesized_expression "(*(long *)(param_1 + 0x80) == 0)" ( (binary_expression "*(long *)(param_1 + 0x80) == 0" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }" { (expression_statement "lVar20 = dcgettext(0,"<no-strings>",5);" (assignment_expression "lVar20 = dcgettext(0,"<no-strings>",5)" identifier = (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" else (compound_statement "{\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" { (expression_statement "lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;" (assignment_expression "lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24" identifier = (binary_expression "*(long *)(param_1 + 0x80) + (ulong)*puVar24" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) + (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier))) ;) (if_statement "if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }" if (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24)" ( (binary_expression "*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24" (pointer_expression "*(ulong *)(param_1 + 0x88)" * (cast_expression "(ulong *)(param_1 + 0x88)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) <= (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) )) (compound_statement "{\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }" { (expression_statement "lVar20 = dcgettext(0,"<corrupt>",5);" (assignment_expression "lVar20 = dcgettext(0,"<corrupt>",5)" identifier = (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal )))) ;) })) }))) (expression_statement "FUN_001122a0(0xffffffef,lVar20);" (call_expression "FUN_001122a0(0xffffffef,lVar20)" identifier (argument_list "(0xffffffef,lVar20)" ( number_literal , identifier ))) ;) }) (else_clause "else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" else (compound_statement "{\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" { (expression_statement "uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);" (assignment_expression "uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24)" identifier = (call_expression "FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24)" identifier (argument_list "(param_1 + 0x80,param_1 + 0x88,puVar24)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) , (binary_expression "param_1 + 0x88" identifier + number_literal) , identifier )))) ;) (expression_statement "printf("%s\n      ",uVar12);" (call_expression "printf("%s\n      ",uVar12)" identifier (argument_list "("%s\n      ",uVar12)" ( (string_literal ""%s\n      "" " string_content escape_sequence string_content ") , identifier ))) ;) }))) (expression_statement "uVar12 = FUN_001176d0(param_1,puVar24[1]);" (assignment_expression "uVar12 = FUN_001176d0(param_1,puVar24[1])" identifier = (call_expression "FUN_001176d0(param_1,puVar24[1])" identifier (argument_list "(param_1,puVar24[1])" ( identifier , (subscript_expression "puVar24[1]" identifier [ number_literal ]) )))) ;) (expression_statement "pcVar14 = " %-15.15s ";" (assignment_expression "pcVar14 = " %-15.15s "" identifier = (string_literal "" %-15.15s "" " string_content ")) ;) (if_statement "if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }" if (parenthesized_expression "(DAT_00196f50 != 0)" ( (binary_expression "DAT_00196f50 != 0" identifier != number_literal) )) (compound_statement "{\n          pcVar14 = " %-15s ";\n        }" { (expression_statement "pcVar14 = " %-15s ";" (assignment_expression "pcVar14 = " %-15s "" identifier = (string_literal "" %-15s "" " string_content ")) ;) })) (expression_statement "printf(pcVar14,uVar12);" (call_expression "printf(pcVar14,uVar12)" identifier (argument_list "(pcVar14,uVar12)" ( identifier , identifier ))) ;) (if_statement "if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" if (parenthesized_expression "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )) (compound_statement "{\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }" { (if_statement "if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" if (parenthesized_expression "(DAT_00196f50 == 0)" ( (binary_expression "DAT_00196f50 == 0" identifier == number_literal) )) (compound_statement "{\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }" { (if_statement "if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }" { (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 4),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 4)" * (cast_expression "(undefined8 *)(puVar24 + 4)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 4)" ( (binary_expression "puVar24 + 4" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf("  %8.8lx",*(undefined8 *)(puVar24 + 6))" identifier (argument_list "("  %8.8lx",*(undefined8 *)(puVar24 + 6))" ( (string_literal ""  %8.8lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) ))) ;) (expression_statement "printf("\n       ");" (call_expression "printf("\n       ")" identifier (argument_list "("\n       ")" ( (string_literal ""\n       "" " escape_sequence string_content ") ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 8),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf("  ");" (call_expression "printf("  ")" identifier (argument_list "("  ")" ( (string_literal ""  "" " string_content ") ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 0xe),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier = (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" ( (binary_expression "param_1 + 0x1f" identifier + number_literal) , (binary_expression "param_1 + 0x52" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 2)" * (cast_expression "(undefined8 *)(puVar24 + 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) )))) )))) ;) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" identifier (argument_list "(" %3s ",uVar12)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) (expression_statement "printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""     %2u   %3u     %lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[10]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[10]" identifier [ number_literal ])) , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" else (compound_statement "{\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" { (expression_statement "uVar12 = FUN_001176d0(param_1,puVar24[1]);" (assignment_expression "uVar12 = FUN_001176d0(param_1,puVar24[1])" identifier = (call_expression "FUN_001176d0(param_1,puVar24[1])" identifier (argument_list "(param_1,puVar24[1])" ( identifier , (subscript_expression "puVar24[1]" identifier [ number_literal ]) )))) ;) (expression_statement "printf("       %-15.15s  ",uVar12);" (call_expression "printf("       %-15.15s  ",uVar12)" identifier (argument_list "("       %-15.15s  ",uVar12)" ( (string_literal ""       %-15.15s  "" " string_content ") , identifier ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 4),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 4)" * (cast_expression "(undefined8 *)(puVar24 + 4)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 4)" ( (binary_expression "puVar24 + 4" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf("  %16.16lx",*(undefined8 *)(puVar24 + 6))" identifier (argument_list "("  %16.16lx",*(undefined8 *)(puVar24 + 6))" ( (string_literal ""  %16.16lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) ))) ;) (expression_statement "printf("  %u\n       ",(ulong)puVar24[10]);" (call_expression "printf("  %u\n       ",(ulong)puVar24[10])" identifier (argument_list "("  %u\n       ",(ulong)puVar24[10])" ( (string_literal ""  %u\n       "" " string_content escape_sequence string_content ") , (cast_expression "(ulong)puVar24[10]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[10]" identifier [ number_literal ])) ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 8),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 0xe),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""  %-16u  %lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }))) }) (else_clause "else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" else (compound_statement "{\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" { (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 4),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 4)" * (cast_expression "(undefined8 *)(puVar24 + 4)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 4)" ( (binary_expression "puVar24 + 4" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf(" %6.6lx",*(undefined8 *)(puVar24 + 6))" identifier (argument_list "(" %6.6lx",*(undefined8 *)(puVar24 + 6))" ( (string_literal "" %6.6lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) ))) ;) (expression_statement "printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));" (call_expression "printf(" %6.6lx",*(undefined8 *)(puVar24 + 8))" identifier (argument_list "(" %6.6lx",*(undefined8 *)(puVar24 + 8))" ( (string_literal "" %6.6lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) ))) ;) (expression_statement "printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));" (call_expression "printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe))" identifier (argument_list "(" %2.2lx",*(undefined8 *)(puVar24 + 0xe))" ( (string_literal "" %2.2lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) ))) ;) (if_statement "if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }" { (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier = (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" ( (binary_expression "param_1 + 0x1f" identifier + number_literal) , (binary_expression "param_1 + 0x52" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 2)" * (cast_expression "(undefined8 *)(puVar24 + 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) )))) )))) ;) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" identifier (argument_list "(" %3s ",uVar12)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) }) (else_clause "else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" else (compound_statement "{\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" { (expression_statement "fwrite(&DAT_0016a396,1,2,stdout);" (call_expression "fwrite(&DAT_0016a396,1,2,stdout)" identifier (argument_list "(&DAT_0016a396,1,2,stdout)" ( (pointer_expression "&DAT_0016a396" & identifier) , number_literal , number_literal , identifier ))) ;) }))) (expression_statement "printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);" (call_expression "printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb])" identifier (argument_list "("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb])" ( (string_literal ""%2u %3u "" " string_content ") , (cast_expression "(ulong)puVar24[10]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[10]" identifier [ number_literal ])) , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ))) ;) (expression_statement "printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%2lu\n",*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%2lu\n"" " string_content escape_sequence ") , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }))) }) (else_clause "else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" else (compound_statement "{\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" { (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 4),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 4)" * (cast_expression "(undefined8 *)(puVar24 + 4)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 4)" ( (binary_expression "puVar24 + 4" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));" (call_expression "printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe))" identifier (argument_list "(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe))" ( (string_literal "" %6.6lx %6.6lx %2.2lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) , (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) , (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) ))) ;) (if_statement "if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }" { (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier = (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" ( (binary_expression "param_1 + 0x1f" identifier + number_literal) , (binary_expression "param_1 + 0x52" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 2)" * (cast_expression "(undefined8 *)(puVar24 + 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) )))) )))) ;) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" identifier (argument_list "(" %3s ",uVar12)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) }) (else_clause "else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" else (compound_statement "{\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" { (expression_statement "fwrite(&DAT_0016a396,1,2,stdout);" (call_expression "fwrite(&DAT_0016a396,1,2,stdout)" identifier (argument_list "(&DAT_0016a396,1,2,stdout)" ( (pointer_expression "&DAT_0016a396" & identifier) , number_literal , number_literal , identifier ))) ;) }))) (expression_statement "uVar22 = puVar24[10];" (assignment_expression "uVar22 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;) (if_statement "if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" if (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" ( (binary_expression "uVar22 < *(uint *)(param_1 + 100)" identifier < (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) )) (compound_statement "{\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }" { (if_statement "if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }" { (expression_statement "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%2u %3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" else (compound_statement "{\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" { (expression_statement "printf("%2u ");" (call_expression "printf("%2u ")" identifier (argument_list "("%2u ")" ( (string_literal ""%2u "" " string_content ") ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }))) }) (else_clause "else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" else (compound_statement "{\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" { (expression_statement "uVar6 = *(ushort *)(param_1 + 0x52);" (assignment_expression "uVar6 = *(ushort *)(param_1 + 0x52)" identifier = (pointer_expression "*(ushort *)(param_1 + 0x52)" * (cast_expression "(ushort *)(param_1 + 0x52)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x52)" ( (binary_expression "param_1 + 0x52" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" if (parenthesized_expression "(uVar6 == 0x12)" ( (binary_expression "uVar6 == 0x12" identifier == number_literal) )) (compound_statement "{\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" { (labeled_statement "LAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" statement_identifier : (if_statement "if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" if (parenthesized_expression "(uVar22 == 0xff00)" ( (binary_expression "uVar22 == 0xff00" identifier == number_literal) )) (compound_statement "{\n                pcVar14 = "BEFORE";\n              }" { (expression_statement "pcVar14 = "BEFORE";" (assignment_expression "pcVar14 = "BEFORE"" identifier = (string_literal ""BEFORE"" " string_content ")) ;) }) (else_clause "else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" else (compound_statement "{\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" { (if_statement "if (uVar22 != 0xff01) goto LAB_0012c012;" if (parenthesized_expression "(uVar22 != 0xff01)" ( (binary_expression "uVar22 != 0xff01" identifier != number_literal) )) (goto_statement "goto LAB_0012c012;" goto statement_identifier ;)) (expression_statement "pcVar14 = "AFTER";" (assignment_expression "pcVar14 = "AFTER"" identifier = (string_literal ""AFTER"" " string_content ")) ;) })))) (if_statement "if (DAT_0019348c == 0) goto LAB_0012c248;" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012c248;" goto statement_identifier ;)) (expression_statement "printf("<%s> ",pcVar14);" (call_expression "printf("<%s> ",pcVar14)" identifier (argument_list "("<%s> ",pcVar14)" ( (string_literal ""<%s> "" " string_content ") , identifier ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" else (compound_statement "{\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" { (if_statement "if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }" if (parenthesized_expression "(0x12 < uVar6)" ( (binary_expression "0x12 < uVar6" number_literal < identifier) )) (compound_statement "{\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }" { (if_statement "if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }" if (parenthesized_expression "(uVar6 != 0x3e)" ( (binary_expression "uVar6 != 0x3e" identifier != number_literal) )) (compound_statement "{\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }" { (if_statement "if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }" if (parenthesized_expression "(0x3e < uVar6)" ( (binary_expression "0x3e < uVar6" number_literal < identifier) )) (compound_statement "{\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }" { (expression_statement "uVar6 = uVar6 - 0xb4;" (assignment_expression "uVar6 = uVar6 - 0xb4" identifier = (binary_expression "uVar6 - 0xb4" identifier - number_literal)) ;) (goto_statement "goto joined_r0x0012c138;" goto statement_identifier ;) })) (if_statement "if (uVar6 != 0x2b) goto LAB_0012c012;" if (parenthesized_expression "(uVar6 != 0x2b)" ( (binary_expression "uVar6 != 0x2b" identifier != number_literal) )) (goto_statement "goto LAB_0012c012;" goto statement_identifier ;)) })) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;) })) (if_statement "if (uVar6 == 6) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar6 == 6)" ( (binary_expression "uVar6 == 6" identifier == number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;)) (if_statement "if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar6 < 7)" ( (binary_expression "uVar6 < 7" identifier < number_literal) )) (compound_statement "{\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }" { (expression_statement "uVar6 = uVar6 - 2;" (assignment_expression "uVar6 = uVar6 - 2" identifier = (binary_expression "uVar6 - 2" identifier - number_literal)) ;) (labeled_statement "joined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;" statement_identifier : (if_statement "if (uVar6 < 2) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar6 < 2)" ( (binary_expression "uVar6 < 2" identifier < number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;))) }) (else_clause "else if (uVar6 == 0xb) goto LAB_0012c0c0;" else (if_statement "if (uVar6 == 0xb) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar6 == 0xb)" ( (binary_expression "uVar6 == 0xb" identifier == number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;)))) (labeled_statement "LAB_0012c012:\n              pcVar14 = "";" statement_identifier : (expression_statement "pcVar14 = "";" (assignment_expression "pcVar14 = """ identifier = (string_literal """" " ")) ;)) (if_statement "if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }" { (labeled_statement "LAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));" statement_identifier : (expression_statement "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%2u %3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;)) }) (else_clause "else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" else (compound_statement "{\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" { (expression_statement "pcVar14 = "";" (assignment_expression "pcVar14 = """ identifier = (string_literal """" " ")) ;) (expression_statement "printf("%2u ");" (call_expression "printf("%2u ")" identifier (argument_list "("%2u ")" ( (string_literal ""%2u "" " string_content ") ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }))) }))) (if_statement "if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }" if (parenthesized_expression "(*pcVar14 == '\0')" ( (binary_expression "*pcVar14 == '\0'" (pointer_expression "*pcVar14" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }" { (expression_statement "uVar22 = puVar24[10];" (assignment_expression "uVar22 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;) (expression_statement "uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" identifier = (call_expression "dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" identifier (argument_list "(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" ( number_literal , (string_literal ""section %u: sh_link value of %u is larger than the number of sections\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar17,uVar22);" (call_expression "warn(uVar12,uVar17,uVar22)" identifier (argument_list "(uVar12,uVar17,uVar22)" ( identifier , identifier , identifier ))) ;) })) }))) }))) (if_statement "if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }" { (labeled_statement "LAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);" statement_identifier : (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;)) (expression_statement "uVar16 = (int)uVar17 + 1;" (assignment_expression "uVar16 = (int)uVar17 + 1" identifier = (binary_expression "(int)uVar17 + 1" (cast_expression "(int)uVar17" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar17 = (ulong)uVar16;" (assignment_expression "uVar17 = (ulong)uVar16" identifier = (cast_expression "(ulong)uVar16" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" identifier = (binary_expression "puVar24 + 0x14" identifier + number_literal)) ;) (if_statement "if (uVar22 <= uVar16) break;" if (parenthesized_expression "(uVar22 <= uVar16)" ( (binary_expression "uVar22 <= uVar16" identifier <= identifier) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_0012b043;" goto statement_identifier ;) })) (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier = (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" ( (binary_expression "param_1 + 0x1f" identifier + number_literal) , (binary_expression "param_1 + 0x52" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 2)" * (cast_expression "(undefined8 *)(puVar24 + 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) )))) )))) ;) (expression_statement "printf("       %s\n",uVar12);" (call_expression "printf("       %s\n",uVar12)" identifier (argument_list "("       %s\n",uVar12)" ( (string_literal ""       %s\n"" " string_content escape_sequence ") , identifier ))) ;) (if_statement "if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;" if (parenthesized_expression "((*(byte *)((long)puVar24 + 9) & 8) == 0)" ( (binary_expression "(*(byte *)((long)puVar24 + 9) & 8) == 0" (parenthesized_expression "(*(byte *)((long)puVar24 + 9) & 8)" ( (binary_expression "*(byte *)((long)puVar24 + 9) & 8" (pointer_expression "*(byte *)((long)puVar24 + 9)" * (cast_expression "(byte *)((long)puVar24 + 9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar24 + 9)" ( (binary_expression "(long)puVar24 + 9" (cast_expression "(long)puVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012b030;" goto statement_identifier ;)) (expression_statement "uVar12 = dcgettext(0,"compression header",5);" (assignment_expression "uVar12 = dcgettext(0,"compression header",5)" identifier = (call_expression "dcgettext(0,"compression header",5)" identifier (argument_list "(0,"compression header",5)" ( number_literal , (string_literal ""compression header"" " string_content ") , number_literal )))) ;) (expression_statement "lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);" (assignment_expression "lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" identifier = (call_expression "FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" identifier (argument_list "(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" ( identifier , (binary_expression "param_1 + 8" identifier + number_literal) , (binary_expression "param_1 + 0x10" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) , number_literal , number_literal , identifier )))) ;) (if_statement "if (lVar20 == 0) goto LAB_0012b030;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012b030;" goto statement_identifier ;)) (expression_statement "FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);" (call_expression "FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8)" identifier (argument_list "(local_68,local_88,0x18,0x12bbf8)" ( identifier , identifier , number_literal , number_literal ))) ;) (expression_statement "uVar22 = local_68[0];" (assignment_expression "uVar22 = local_68[0]" identifier = (subscript_expression "local_68[0]" identifier [ number_literal ])) ;) (if_statement "if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" if (parenthesized_expression "(local_68[0] == 1)" ( (binary_expression "local_68[0] == 1" (subscript_expression "local_68[0]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n          printf("       ZLIB, ");\n        }" { (expression_statement "printf("       ZLIB, ");" (call_expression "printf("       ZLIB, ")" identifier (argument_list "("       ZLIB, ")" ( (string_literal ""       ZLIB, "" " string_content ") ))) ;) }) (else_clause "else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" else (compound_statement "{\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5)" identifier = (cast_expression "(char *)dcgettext(0,"       [<unknown>: 0x%x], ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"       [<unknown>: 0x%x], ",5)" identifier (argument_list "(0,"       [<unknown>: 0x%x], ",5)" ( number_literal , (string_literal ""       [<unknown>: 0x%x], "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar14,(ulong)uVar22);" (call_expression "printf(pcVar14,(ulong)uVar22)" identifier (argument_list "(pcVar14,(ulong)uVar22)" ( identifier , (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) }))) (expression_statement "uVar16 = (int)uVar17 + 1;" (assignment_expression "uVar16 = (int)uVar17 + 1" identifier = (binary_expression "(int)uVar17 + 1" (cast_expression "(int)uVar17" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar17 = (ulong)uVar16;" (assignment_expression "uVar17 = (ulong)uVar16" identifier = (cast_expression "(ulong)uVar16" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" identifier = (binary_expression "puVar24 + 0x14" identifier + number_literal)) ;) (expression_statement "FUN_001116b0(local_60,6);" (call_expression "FUN_001116b0(local_60,6)" identifier (argument_list "(local_60,6)" ( identifier , number_literal ))) ;) (expression_statement "printf(", %lu\n",local_58);" (call_expression "printf(", %lu\n",local_58)" identifier (argument_list "(", %lu\n",local_58)" ( (string_literal "", %lu\n"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(uVar16 < uVar22)" ( (binary_expression "uVar16 < uVar22" identifier < identifier) )) ;)) (goto_statement "goto LAB_0012bca8;" goto statement_identifier ;) })) }) (else_clause "else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" else (compound_statement "{\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"       Flags\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"       Flags\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"       Flags\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"       Flags\n",5)" identifier (argument_list "(0,"       Flags\n",5)" ( number_literal , (string_literal ""       Flags\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (if_statement "if (uVar22 != 0) goto LAB_0012ae50;" if (parenthesized_expression "(uVar22 != 0)" ( (binary_expression "uVar22 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0012ae50;" goto statement_identifier ;)) (labeled_statement "LAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }" statement_identifier : (if_statement "if (DAT_0019348c != 0) {\n      return 1;\n    }" if (parenthesized_expression "(DAT_0019348c != 0)" ( (binary_expression "DAT_0019348c != 0" identifier != number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) }))) }))) (expression_statement "pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" identifier (argument_list "(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" ( number_literal , (string_literal ""Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "sVar1 = *(short *)(param_1 + 0x52);" (assignment_expression "sVar1 = *(short *)(param_1 + 0x52)" identifier = (pointer_expression "*(short *)(param_1 + 0x52)" * (cast_expression "(short *)(param_1 + 0x52)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x52)" ( (binary_expression "param_1 + 0x52" identifier + number_literal) ))))) ;) (if_statement "if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" if (parenthesized_expression "(((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e))" ( (binary_expression "((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)" (parenthesized_expression "((ushort)(sVar1 - 0xb4U) < 2)" ( (binary_expression "(ushort)(sVar1 - 0xb4U) < 2" (call_expression "(ushort)(sVar1 - 0xb4U)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(sVar1 - 0xb4U)" ( (binary_expression "sVar1 - 0xb4U" identifier - number_literal) ))) < number_literal) )) || (parenthesized_expression "(sVar1 == 0x3e)" ( (binary_expression "sVar1 == 0x3e" identifier == number_literal) ))) )) (compound_statement "{\n    pcVar14 = "l (large), ";\n  }" { (expression_statement "pcVar14 = "l (large), ";" (assignment_expression "pcVar14 = "l (large), "" identifier = (string_literal ""l (large), "" " string_content ")) ;) }) (else_clause "else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" else (compound_statement "{\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" { (expression_statement "pcVar14 = "y (purecode), ";" (assignment_expression "pcVar14 = "y (purecode), "" identifier = (string_literal ""y (purecode), "" " string_content ")) ;) (if_statement "if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }" if (parenthesized_expression "(sVar1 != 0x28)" ( (binary_expression "sVar1 != 0x28" identifier != number_literal) )) (compound_statement "{\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }" { (if_statement "if (sVar1 != 0x14) goto LAB_0012bd12;" if (parenthesized_expression "(sVar1 != 0x14)" ( (binary_expression "sVar1 != 0x14" identifier != number_literal) )) (goto_statement "goto LAB_0012bd12;" goto statement_identifier ;)) (expression_statement "pcVar14 = "v (VLE), ";" (assignment_expression "pcVar14 = "v (VLE), "" identifier = (string_literal ""v (VLE), "" " string_content ")) ;) })) }))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar14,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (labeled_statement "LAB_0012bd12:\n  puts("p (processor specific)");" statement_identifier : (expression_statement "puts("p (processor specific)");" (call_expression "puts("p (processor specific)")" identifier (argument_list "("p (processor specific)")" ( (string_literal ""p (processor specific)"" " string_content ") ))) ;)) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "bfd_boolean process_section_headers(Filedata *filedata)\n\n{\n  bfd_vma bVar1;\n  bfd_boolean bVar2;\n  int iVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 uVar6;\n  byte bVar7;\n  ushort uVar8;\n  int iVar9;\n  int iVar10;\n  byte *pbVar11;\n  ulong uVar12;\n  elf_section_list *peVar13;\n  Elf_Internal_Shdr *pEVar14;\n  Filedata *pFVar15;\n  Filedata *filedata_1;\n  void *pvVar16;\n  FILE *pFVar17;\n  char *pcVar18;\n  long lVar19;\n  uint uVar20;\n  ulong uVar21;\n  byte *pbVar22;\n  bfd_size_type bVar23;\n  char *__format;\n  byte *pbVar24;\n  uint uVar25;\n  uint uVar26;\n  Elf_Internal_Shdr *section;\n  bool bVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  bool bVar30;\n  undefined1 uVar31;\n  byte bVar32;\n  uchar buf_3 [24];\n  char buf [40];\n  \n  bVar32 = 0;\n  uVar25 = (filedata->file_header).e_shnum;\n  filedata->section_headers = (Elf_Internal_Shdr *)0x0;\n  if (uVar25 == 0) {\n    if ((filedata->file_header).e_shoff != 0) {\n      pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5);\n      warn(pcVar18);\n      return 0;\n    }\n    if (do_sections == 0) {\n      return 1;\n    }\n    pcVar18 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar18);\n    return 1;\n  }\n  if ((do_sections != 0) && (do_header == 0)) {\n    bVar23 = (filedata->file_header).e_shoff;\n    pcVar18 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5);\n    printf(pcVar18,(ulong)uVar25,bVar23);\n  }\n  if (is_32bit_elf == 0) {\n    iVar9 = get_64bit_section_headers(filedata,0);\n  }\n  else {\n    iVar9 = get_32bit_section_headers(filedata,0);\n  }\n  if (iVar9 == 0) {\n    return 0;\n  }\n  uVar25 = (filedata->file_header).e_shstrndx;\n  section = filedata->section_headers;\n  if (((uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum)) &&\n     (section[uVar25].sh_size != 0)) {\n    pFVar15 = (Filedata *)dcgettext(0,"string table",5);\n    pcVar18 = (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)\n    ;\n    bVar23 = 0;\n    filedata->string_table = pcVar18;\n    if (pcVar18 != (char *)0x0) {\n      bVar23 = section[uVar25].sh_size;\n    }\n    filedata->string_table_length = bVar23;\n    section = filedata->section_headers;\n  }\n  dynamic_symbols = (Elf_Internal_Sym *)0x0;\n  dynamic_strings = (char *)0x0;\n  dynamic_syminfo = (Elf_Internal_Syminfo *)0x0;\n  symtab_shndx_list = (elf_section_list *)0x0;\n  eh_addr_size = (-(uint)(is_32bit_elf == 0) & 4) + 4;\n  uVar8 = (filedata->file_header).e_machine;\n  if (uVar8 < 0x30) {\n    if (uVar8 < 0x2e) {\n      if (((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }\n    }\n    else {\n      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;\n      if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      eh_addr_size = 2;\n    }\n  }\n  else if (((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&\n          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if ((filedata->file_header).e_shnum == 0) {\n    if (do_sections == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar18 = "\nSection Header:\n";\n  }\n  else {\n    uVar25 = 0;\n    do {\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    } while (uVar25 < uVar20);\n    if (do_sections == 0) {\n      return 1;\n    }\n    if (uVar20 < 2) goto LAB_0012c296;\n    pcVar18 = "\nSection Headers:\n";\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\n  if (is_32bit_elf == 0) {\n    if (do_wide == 0) {\n      if (do_section_details == 0) {\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (do_section_details != 0) {\n      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar18);\n      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\n  if (do_section_details == 0) {\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) {\nLAB_0012ae50:\n      uVar21 = 0;\nLAB_0012b043:\n      do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar18 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar18);\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (do_section_details != 0) {\n      return 1;\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar18);\n  uVar8 = (filedata->file_header).e_machine;\n  if (((ushort)(uVar8 - 0xb4) < 2) || (uVar8 == 0x3e)) {\n    pcVar18 = "l (large), ";\n  }\n  else {\n    pcVar18 = "y (purecode), ";\n    if (uVar8 != 0x28) {\n      if (uVar8 != 0x14) goto LAB_0012bd12;\n      pcVar18 = "v (VLE), ";\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}\n\n" (function_definition "bfd_boolean process_section_headers(Filedata *filedata)\n\n{\n  bfd_vma bVar1;\n  bfd_boolean bVar2;\n  int iVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 uVar6;\n  byte bVar7;\n  ushort uVar8;\n  int iVar9;\n  int iVar10;\n  byte *pbVar11;\n  ulong uVar12;\n  elf_section_list *peVar13;\n  Elf_Internal_Shdr *pEVar14;\n  Filedata *pFVar15;\n  Filedata *filedata_1;\n  void *pvVar16;\n  FILE *pFVar17;\n  char *pcVar18;\n  long lVar19;\n  uint uVar20;\n  ulong uVar21;\n  byte *pbVar22;\n  bfd_size_type bVar23;\n  char *__format;\n  byte *pbVar24;\n  uint uVar25;\n  uint uVar26;\n  Elf_Internal_Shdr *section;\n  bool bVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  bool bVar30;\n  undefined1 uVar31;\n  byte bVar32;\n  uchar buf_3 [24];\n  char buf [40];\n  \n  bVar32 = 0;\n  uVar25 = (filedata->file_header).e_shnum;\n  filedata->section_headers = (Elf_Internal_Shdr *)0x0;\n  if (uVar25 == 0) {\n    if ((filedata->file_header).e_shoff != 0) {\n      pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5);\n      warn(pcVar18);\n      return 0;\n    }\n    if (do_sections == 0) {\n      return 1;\n    }\n    pcVar18 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar18);\n    return 1;\n  }\n  if ((do_sections != 0) && (do_header == 0)) {\n    bVar23 = (filedata->file_header).e_shoff;\n    pcVar18 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5);\n    printf(pcVar18,(ulong)uVar25,bVar23);\n  }\n  if (is_32bit_elf == 0) {\n    iVar9 = get_64bit_section_headers(filedata,0);\n  }\n  else {\n    iVar9 = get_32bit_section_headers(filedata,0);\n  }\n  if (iVar9 == 0) {\n    return 0;\n  }\n  uVar25 = (filedata->file_header).e_shstrndx;\n  section = filedata->section_headers;\n  if (((uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum)) &&\n     (section[uVar25].sh_size != 0)) {\n    pFVar15 = (Filedata *)dcgettext(0,"string table",5);\n    pcVar18 = (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)\n    ;\n    bVar23 = 0;\n    filedata->string_table = pcVar18;\n    if (pcVar18 != (char *)0x0) {\n      bVar23 = section[uVar25].sh_size;\n    }\n    filedata->string_table_length = bVar23;\n    section = filedata->section_headers;\n  }\n  dynamic_symbols = (Elf_Internal_Sym *)0x0;\n  dynamic_strings = (char *)0x0;\n  dynamic_syminfo = (Elf_Internal_Syminfo *)0x0;\n  symtab_shndx_list = (elf_section_list *)0x0;\n  eh_addr_size = (-(uint)(is_32bit_elf == 0) & 4) + 4;\n  uVar8 = (filedata->file_header).e_machine;\n  if (uVar8 < 0x30) {\n    if (uVar8 < 0x2e) {\n      if (((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }\n    }\n    else {\n      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;\n      if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      eh_addr_size = 2;\n    }\n  }\n  else if (((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&\n          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if ((filedata->file_header).e_shnum == 0) {\n    if (do_sections == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar18 = "\nSection Header:\n";\n  }\n  else {\n    uVar25 = 0;\n    do {\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    } while (uVar25 < uVar20);\n    if (do_sections == 0) {\n      return 1;\n    }\n    if (uVar20 < 2) goto LAB_0012c296;\n    pcVar18 = "\nSection Headers:\n";\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\n  if (is_32bit_elf == 0) {\n    if (do_wide == 0) {\n      if (do_section_details == 0) {\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (do_section_details != 0) {\n      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar18);\n      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\n  if (do_section_details == 0) {\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) {\nLAB_0012ae50:\n      uVar21 = 0;\nLAB_0012b043:\n      do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar18 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar18);\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (do_section_details != 0) {\n      return 1;\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar18);\n  uVar8 = (filedata->file_header).e_machine;\n  if (((ushort)(uVar8 - 0xb4) < 2) || (uVar8 == 0x3e)) {\n    pcVar18 = "l (large), ";\n  }\n  else {\n    pcVar18 = "y (purecode), ";\n    if (uVar8 != 0x28) {\n      if (uVar8 != 0x14) goto LAB_0012bd12;\n      pcVar18 = "v (VLE), ";\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}" type_identifier (function_declarator "process_section_headers(Filedata *filedata)" identifier (parameter_list "(Filedata *filedata)" ( (parameter_declaration "Filedata *filedata" type_identifier (pointer_declarator "*filedata" * identifier)) ))) (compound_statement "{\n  bfd_vma bVar1;\n  bfd_boolean bVar2;\n  int iVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 uVar6;\n  byte bVar7;\n  ushort uVar8;\n  int iVar9;\n  int iVar10;\n  byte *pbVar11;\n  ulong uVar12;\n  elf_section_list *peVar13;\n  Elf_Internal_Shdr *pEVar14;\n  Filedata *pFVar15;\n  Filedata *filedata_1;\n  void *pvVar16;\n  FILE *pFVar17;\n  char *pcVar18;\n  long lVar19;\n  uint uVar20;\n  ulong uVar21;\n  byte *pbVar22;\n  bfd_size_type bVar23;\n  char *__format;\n  byte *pbVar24;\n  uint uVar25;\n  uint uVar26;\n  Elf_Internal_Shdr *section;\n  bool bVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  bool bVar30;\n  undefined1 uVar31;\n  byte bVar32;\n  uchar buf_3 [24];\n  char buf [40];\n  \n  bVar32 = 0;\n  uVar25 = (filedata->file_header).e_shnum;\n  filedata->section_headers = (Elf_Internal_Shdr *)0x0;\n  if (uVar25 == 0) {\n    if ((filedata->file_header).e_shoff != 0) {\n      pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5);\n      warn(pcVar18);\n      return 0;\n    }\n    if (do_sections == 0) {\n      return 1;\n    }\n    pcVar18 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar18);\n    return 1;\n  }\n  if ((do_sections != 0) && (do_header == 0)) {\n    bVar23 = (filedata->file_header).e_shoff;\n    pcVar18 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5);\n    printf(pcVar18,(ulong)uVar25,bVar23);\n  }\n  if (is_32bit_elf == 0) {\n    iVar9 = get_64bit_section_headers(filedata,0);\n  }\n  else {\n    iVar9 = get_32bit_section_headers(filedata,0);\n  }\n  if (iVar9 == 0) {\n    return 0;\n  }\n  uVar25 = (filedata->file_header).e_shstrndx;\n  section = filedata->section_headers;\n  if (((uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum)) &&\n     (section[uVar25].sh_size != 0)) {\n    pFVar15 = (Filedata *)dcgettext(0,"string table",5);\n    pcVar18 = (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)\n    ;\n    bVar23 = 0;\n    filedata->string_table = pcVar18;\n    if (pcVar18 != (char *)0x0) {\n      bVar23 = section[uVar25].sh_size;\n    }\n    filedata->string_table_length = bVar23;\n    section = filedata->section_headers;\n  }\n  dynamic_symbols = (Elf_Internal_Sym *)0x0;\n  dynamic_strings = (char *)0x0;\n  dynamic_syminfo = (Elf_Internal_Syminfo *)0x0;\n  symtab_shndx_list = (elf_section_list *)0x0;\n  eh_addr_size = (-(uint)(is_32bit_elf == 0) & 4) + 4;\n  uVar8 = (filedata->file_header).e_machine;\n  if (uVar8 < 0x30) {\n    if (uVar8 < 0x2e) {\n      if (((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }\n    }\n    else {\n      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;\n      if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      eh_addr_size = 2;\n    }\n  }\n  else if (((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&\n          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if ((filedata->file_header).e_shnum == 0) {\n    if (do_sections == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar18 = "\nSection Header:\n";\n  }\n  else {\n    uVar25 = 0;\n    do {\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    } while (uVar25 < uVar20);\n    if (do_sections == 0) {\n      return 1;\n    }\n    if (uVar20 < 2) goto LAB_0012c296;\n    pcVar18 = "\nSection Headers:\n";\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\n  if (is_32bit_elf == 0) {\n    if (do_wide == 0) {\n      if (do_section_details == 0) {\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (do_section_details != 0) {\n      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar18);\n      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\n  if (do_section_details == 0) {\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) {\nLAB_0012ae50:\n      uVar21 = 0;\nLAB_0012b043:\n      do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar18 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar18);\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (do_section_details != 0) {\n      return 1;\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar18);\n  uVar8 = (filedata->file_header).e_machine;\n  if (((ushort)(uVar8 - 0xb4) < 2) || (uVar8 == 0x3e)) {\n    pcVar18 = "l (large), ";\n  }\n  else {\n    pcVar18 = "y (purecode), ";\n    if (uVar8 != 0x28) {\n      if (uVar8 != 0x14) goto LAB_0012bd12;\n      pcVar18 = "v (VLE), ";\n    }\n  }\n  pcVar18 = (char *)dcgettext(0,pcVar18,5);\n  printf(pcVar18);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}" { (declaration "bfd_vma bVar1;" type_identifier identifier ;) (declaration "bfd_boolean bVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "byte bVar7;" type_identifier identifier ;) (declaration "ushort uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "ulong uVar12;" type_identifier identifier ;) (declaration "elf_section_list *peVar13;" type_identifier (pointer_declarator "*peVar13" * identifier) ;) (declaration "Elf_Internal_Shdr *pEVar14;" type_identifier (pointer_declarator "*pEVar14" * identifier) ;) (declaration "Filedata *pFVar15;" type_identifier (pointer_declarator "*pFVar15" * identifier) ;) (declaration "Filedata *filedata_1;" type_identifier (pointer_declarator "*filedata_1" * identifier) ;) (declaration "void *pvVar16;" primitive_type (pointer_declarator "*pvVar16" * identifier) ;) (declaration "FILE *pFVar17;" type_identifier (pointer_declarator "*pFVar17" * identifier) ;) (declaration "char *pcVar18;" primitive_type (pointer_declarator "*pcVar18" * identifier) ;) (declaration "long lVar19;" (sized_type_specifier "long" long) identifier ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "ulong uVar21;" type_identifier identifier ;) (declaration "byte *pbVar22;" type_identifier (pointer_declarator "*pbVar22" * identifier) ;) (declaration "bfd_size_type bVar23;" type_identifier identifier ;) (declaration "char *__format;" primitive_type (pointer_declarator "*__format" * identifier) ;) (declaration "byte *pbVar24;" type_identifier (pointer_declarator "*pbVar24" * identifier) ;) (declaration "uint uVar25;" type_identifier identifier ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "Elf_Internal_Shdr *section;" type_identifier (pointer_declarator "*section" * identifier) ;) (declaration "bool bVar27;" primitive_type identifier ;) (declaration "bool bVar28;" primitive_type identifier ;) (declaration "undefined1 uVar29;" type_identifier identifier ;) (declaration "bool bVar30;" primitive_type identifier ;) (declaration "undefined1 uVar31;" type_identifier identifier ;) (declaration "byte bVar32;" type_identifier identifier ;) (declaration "uchar buf_3 [24];" type_identifier (array_declarator "buf_3 [24]" identifier [ number_literal ]) ;) (declaration "char buf [40];" primitive_type (array_declarator "buf [40]" identifier [ number_literal ]) ;) (expression_statement "bVar32 = 0;" (assignment_expression "bVar32 = 0" identifier = number_literal) ;) (expression_statement "uVar25 = (filedata->file_header).e_shnum;" (assignment_expression "uVar25 = (filedata->file_header).e_shnum" identifier = (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "filedata->section_headers = (Elf_Internal_Shdr *)0x0;" (assignment_expression "filedata->section_headers = (Elf_Internal_Shdr *)0x0" (field_expression "filedata->section_headers" identifier -> field_identifier) = (cast_expression "(Elf_Internal_Shdr *)0x0" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (uVar25 == 0) {\n    if ((filedata->file_header).e_shoff != 0) {\n      pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5);\n      warn(pcVar18);\n      return 0;\n    }\n    if (do_sections == 0) {\n      return 1;\n    }\n    pcVar18 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar18);\n    return 1;\n  }" if (parenthesized_expression "(uVar25 == 0)" ( (binary_expression "uVar25 == 0" identifier == number_literal) )) (compound_statement "{\n    if ((filedata->file_header).e_shoff != 0) {\n      pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5);\n      warn(pcVar18);\n      return 0;\n    }\n    if (do_sections == 0) {\n      return 1;\n    }\n    pcVar18 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar18);\n    return 1;\n  }" { (if_statement "if ((filedata->file_header).e_shoff != 0) {\n      pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5);\n      warn(pcVar18);\n      return 0;\n    }" if (parenthesized_expression "((filedata->file_header).e_shoff != 0)" ( (binary_expression "(filedata->file_header).e_shoff != 0" (field_expression "(filedata->file_header).e_shoff" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) != number_literal) )) (compound_statement "{\n      pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5);\n      warn(pcVar18);\n      return 0;\n    }" { (expression_statement "pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5)" identifier (argument_list "(0,\n                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                                  ,5)" ( number_literal , (string_literal ""possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar18);" (call_expression "warn(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (do_sections == 0) {\n      return 1;\n    }" if (parenthesized_expression "(do_sections == 0)" ( (binary_expression "do_sections == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar18 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nThere are no sections in this file.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nThere are no sections in this file.\n",5)" identifier (argument_list "(0,"\nThere are no sections in this file.\n",5)" ( number_literal , (string_literal ""\nThere are no sections in this file.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((do_sections != 0) && (do_header == 0)) {\n    bVar23 = (filedata->file_header).e_shoff;\n    pcVar18 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5);\n    printf(pcVar18,(ulong)uVar25,bVar23);\n  }" if (parenthesized_expression "((do_sections != 0) && (do_header == 0))" ( (binary_expression "(do_sections != 0) && (do_header == 0)" (parenthesized_expression "(do_sections != 0)" ( (binary_expression "do_sections != 0" identifier != number_literal) )) && (parenthesized_expression "(do_header == 0)" ( (binary_expression "do_header == 0" identifier == number_literal) ))) )) (compound_statement "{\n    bVar23 = (filedata->file_header).e_shoff;\n    pcVar18 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5);\n    printf(pcVar18,(ulong)uVar25,bVar23);\n  }" { (expression_statement "bVar23 = (filedata->file_header).e_shoff;" (assignment_expression "bVar23 = (filedata->file_header).e_shoff" identifier = (field_expression "(filedata->file_header).e_shoff" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "pcVar18 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5);" (assignment_expression "pcVar18 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5)" identifier = (cast_expression "(char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5)" identifier (argument_list "(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar25,\n                                 5)" ( number_literal , (string_literal ""There is %d section header, starting at offset 0x%lx:\n"" " string_content escape_sequence ") , (string_literal ""There are %d section headers, starting at offset 0x%lx:\n"" " string_content escape_sequence ") , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar18,(ulong)uVar25,bVar23);" (call_expression "printf(pcVar18,(ulong)uVar25,bVar23)" identifier (argument_list "(pcVar18,(ulong)uVar25,bVar23)" ( identifier , (cast_expression "(ulong)uVar25" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier ))) ;) })) (if_statement "if (is_32bit_elf == 0) {\n    iVar9 = get_64bit_section_headers(filedata,0);\n  }\n  else {\n    iVar9 = get_32bit_section_headers(filedata,0);\n  }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n    iVar9 = get_64bit_section_headers(filedata,0);\n  }" { (expression_statement "iVar9 = get_64bit_section_headers(filedata,0);" (assignment_expression "iVar9 = get_64bit_section_headers(filedata,0)" identifier = (call_expression "get_64bit_section_headers(filedata,0)" identifier (argument_list "(filedata,0)" ( identifier , number_literal )))) ;) }) (else_clause "else {\n    iVar9 = get_32bit_section_headers(filedata,0);\n  }" else (compound_statement "{\n    iVar9 = get_32bit_section_headers(filedata,0);\n  }" { (expression_statement "iVar9 = get_32bit_section_headers(filedata,0);" (assignment_expression "iVar9 = get_32bit_section_headers(filedata,0)" identifier = (call_expression "get_32bit_section_headers(filedata,0)" identifier (argument_list "(filedata,0)" ( identifier , number_literal )))) ;) }))) (if_statement "if (iVar9 == 0) {\n    return 0;\n  }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "uVar25 = (filedata->file_header).e_shstrndx;" (assignment_expression "uVar25 = (filedata->file_header).e_shstrndx" identifier = (field_expression "(filedata->file_header).e_shstrndx" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "section = filedata->section_headers;" (assignment_expression "section = filedata->section_headers" identifier = (field_expression "filedata->section_headers" identifier -> field_identifier)) ;) (if_statement "if (((uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum)) &&\n     (section[uVar25].sh_size != 0)) {\n    pFVar15 = (Filedata *)dcgettext(0,"string table",5);\n    pcVar18 = (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)\n    ;\n    bVar23 = 0;\n    filedata->string_table = pcVar18;\n    if (pcVar18 != (char *)0x0) {\n      bVar23 = section[uVar25].sh_size;\n    }\n    filedata->string_table_length = bVar23;\n    section = filedata->section_headers;\n  }" if (parenthesized_expression "(((uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum)) &&\n     (section[uVar25].sh_size != 0))" ( (binary_expression "((uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum)) &&\n     (section[uVar25].sh_size != 0)" (parenthesized_expression "((uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum))" ( (binary_expression "(uVar25 != 0) && (uVar25 < (filedata->file_header).e_shnum)" (parenthesized_expression "(uVar25 != 0)" ( (binary_expression "uVar25 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar25 < (filedata->file_header).e_shnum)" ( (binary_expression "uVar25 < (filedata->file_header).e_shnum" identifier < (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ))) )) && (parenthesized_expression "(section[uVar25].sh_size != 0)" ( (binary_expression "section[uVar25].sh_size != 0" (field_expression "section[uVar25].sh_size" (subscript_expression "section[uVar25]" identifier [ identifier ]) . field_identifier) != number_literal) ))) )) (compound_statement "{\n    pFVar15 = (Filedata *)dcgettext(0,"string table",5);\n    pcVar18 = (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)\n    ;\n    bVar23 = 0;\n    filedata->string_table = pcVar18;\n    if (pcVar18 != (char *)0x0) {\n      bVar23 = section[uVar25].sh_size;\n    }\n    filedata->string_table_length = bVar23;\n    section = filedata->section_headers;\n  }" { (expression_statement "pFVar15 = (Filedata *)dcgettext(0,"string table",5);" (assignment_expression "pFVar15 = (Filedata *)dcgettext(0,"string table",5)" identifier = (cast_expression "(Filedata *)dcgettext(0,"string table",5)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"string table",5)" identifier (argument_list "(0,"string table",5)" ( number_literal , (string_literal ""string table"" " string_content ") , number_literal ))))) ;) (expression_statement "pcVar18 = (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)\n    ;" (assignment_expression "pcVar18 = (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)" identifier = (cast_expression "(char *)get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "get_data((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)" identifier (argument_list "((void *)0x0,(Filedata *)&filedata->handle,(ulong)&filedata->file_size\n                               ,section[uVar25].sh_offset,1,(char *)section[uVar25].sh_size,pFVar15)" ( (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (cast_expression "(Filedata *)&filedata->handle" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&filedata->handle" & (field_expression "filedata->handle" identifier -> field_identifier))) , (binary_expression "(ulong)&filedata->file_size" (parenthesized_expression "(ulong)" ( identifier )) & (field_expression "filedata->file_size" identifier -> field_identifier)) , (field_expression "section[uVar25].sh_offset" (subscript_expression "section[uVar25]" identifier [ identifier ]) . field_identifier) , number_literal , (cast_expression "(char *)section[uVar25].sh_size" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "section[uVar25].sh_size" (subscript_expression "section[uVar25]" identifier [ identifier ]) . field_identifier)) , identifier ))))) ;) (expression_statement "bVar23 = 0;" (assignment_expression "bVar23 = 0" identifier = number_literal) ;) (expression_statement "filedata->string_table = pcVar18;" (assignment_expression "filedata->string_table = pcVar18" (field_expression "filedata->string_table" identifier -> field_identifier) = identifier) ;) (if_statement "if (pcVar18 != (char *)0x0) {\n      bVar23 = section[uVar25].sh_size;\n    }" if (parenthesized_expression "(pcVar18 != (char *)0x0)" ( (binary_expression "pcVar18 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      bVar23 = section[uVar25].sh_size;\n    }" { (expression_statement "bVar23 = section[uVar25].sh_size;" (assignment_expression "bVar23 = section[uVar25].sh_size" identifier = (field_expression "section[uVar25].sh_size" (subscript_expression "section[uVar25]" identifier [ identifier ]) . field_identifier)) ;) })) (expression_statement "filedata->string_table_length = bVar23;" (assignment_expression "filedata->string_table_length = bVar23" (field_expression "filedata->string_table_length" identifier -> field_identifier) = identifier) ;) (expression_statement "section = filedata->section_headers;" (assignment_expression "section = filedata->section_headers" identifier = (field_expression "filedata->section_headers" identifier -> field_identifier)) ;) })) (expression_statement "dynamic_symbols = (Elf_Internal_Sym *)0x0;" (assignment_expression "dynamic_symbols = (Elf_Internal_Sym *)0x0" identifier = (cast_expression "(Elf_Internal_Sym *)0x0" ( (type_descriptor "Elf_Internal_Sym *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "dynamic_strings = (char *)0x0;" (assignment_expression "dynamic_strings = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "dynamic_syminfo = (Elf_Internal_Syminfo *)0x0;" (assignment_expression "dynamic_syminfo = (Elf_Internal_Syminfo *)0x0" identifier = (cast_expression "(Elf_Internal_Syminfo *)0x0" ( (type_descriptor "Elf_Internal_Syminfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "symtab_shndx_list = (elf_section_list *)0x0;" (assignment_expression "symtab_shndx_list = (elf_section_list *)0x0" identifier = (cast_expression "(elf_section_list *)0x0" ( (type_descriptor "elf_section_list *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "eh_addr_size = (-(uint)(is_32bit_elf == 0) & 4) + 4;" (assignment_expression "eh_addr_size = (-(uint)(is_32bit_elf == 0) & 4) + 4" identifier = (binary_expression "(-(uint)(is_32bit_elf == 0) & 4) + 4" (parenthesized_expression "(-(uint)(is_32bit_elf == 0) & 4)" ( (binary_expression "-(uint)(is_32bit_elf == 0) & 4" (unary_expression "-(uint)(is_32bit_elf == 0)" - (call_expression "(uint)(is_32bit_elf == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) (expression_statement "uVar8 = (filedata->file_header).e_machine;" (assignment_expression "uVar8 = (filedata->file_header).e_machine" identifier = (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (uVar8 < 0x30) {\n    if (uVar8 < 0x2e) {\n      if (((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }\n    }\n    else {\n      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;\n      if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      eh_addr_size = 2;\n    }\n  }\n  else if (((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&\n          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)) goto LAB_0012b791;" if (parenthesized_expression "(uVar8 < 0x30)" ( (binary_expression "uVar8 < 0x30" identifier < number_literal) )) (compound_statement "{\n    if (uVar8 < 0x2e) {\n      if (((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }\n    }\n    else {\n      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;\n      if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      eh_addr_size = 2;\n    }\n  }" { (if_statement "if (uVar8 < 0x2e) {\n      if (((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }\n    }\n    else {\n      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;\n      if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      eh_addr_size = 2;\n    }" if (parenthesized_expression "(uVar8 < 0x2e)" ( (binary_expression "uVar8 < 0x2e" identifier < number_literal) )) (compound_statement "{\n      if (((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }\n    }" { (if_statement "if (((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }" if (parenthesized_expression "(((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000))" ( (binary_expression "((uVar8 == 8) || (uVar8 == 10)) &&\n         (((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)" (parenthesized_expression "((uVar8 == 8) || (uVar8 == 10))" ( (binary_expression "(uVar8 == 8) || (uVar8 == 10)" (parenthesized_expression "(uVar8 == 8)" ( (binary_expression "uVar8 == 8" identifier == number_literal) )) || (parenthesized_expression "(uVar8 == 10)" ( (binary_expression "uVar8 == 10" identifier == number_literal) ))) )) && (parenthesized_expression "(((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000)" ( (binary_expression "((uint)(filedata->file_header).e_flags & 0xf000) == 0x4000" (parenthesized_expression "((uint)(filedata->file_header).e_flags & 0xf000)" ( (binary_expression "(uint)(filedata->file_header).e_flags & 0xf000" (field_expression "(uint)(filedata->file_header).e_flags" (call_expression "(uint)(filedata->file_header)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) ))) . field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n        if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }\n        eh_addr_size = 8;\n      }" { (if_statement "if (section != (Elf_Internal_Shdr *)0x0) {\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }" if (parenthesized_expression "(section != (Elf_Internal_Shdr *)0x0)" ( (binary_expression "section != (Elf_Internal_Shdr *)0x0" identifier != (cast_expression "(Elf_Internal_Shdr *)0x0" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          pEVar14 = find_section(filedata,".gcc_compiled_long32");\n          section = filedata->section_headers;\n          if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;\n        }" { (expression_statement "pEVar14 = find_section(filedata,".gcc_compiled_long32");" (assignment_expression "pEVar14 = find_section(filedata,".gcc_compiled_long32")" identifier = (call_expression "find_section(filedata,".gcc_compiled_long32")" identifier (argument_list "(filedata,".gcc_compiled_long32")" ( identifier , (string_literal "".gcc_compiled_long32"" " string_content ") )))) ;) (expression_statement "section = filedata->section_headers;" (assignment_expression "section = filedata->section_headers" identifier = (field_expression "filedata->section_headers" identifier -> field_identifier)) ;) (if_statement "if (pEVar14 != (Elf_Internal_Shdr *)0x0) goto LAB_0012ad0a;" if (parenthesized_expression "(pEVar14 != (Elf_Internal_Shdr *)0x0)" ( (binary_expression "pEVar14 != (Elf_Internal_Shdr *)0x0" identifier != (cast_expression "(Elf_Internal_Shdr *)0x0" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) })) (expression_statement "eh_addr_size = 8;" (assignment_expression "eh_addr_size = 8" identifier = number_literal) ;) })) }) (else_clause "else {\n      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;\n      if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      eh_addr_size = 2;\n    }" else (compound_statement "{\n      uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;\n      if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      eh_addr_size = 2;\n    }" { (expression_statement "uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000;" (assignment_expression "uVar25 = (uint)(filedata->file_header).e_flags & 0xff0000" identifier = (binary_expression "(uint)(filedata->file_header).e_flags & 0xff0000" (field_expression "(uint)(filedata->file_header).e_flags" (call_expression "(uint)(filedata->file_header)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) ))) . field_identifier) & number_literal)) ;) (if_statement "if (uVar25 != 0x830000) {\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }" if (parenthesized_expression "(uVar25 != 0x830000)" ( (binary_expression "uVar25 != 0x830000" identifier != number_literal) )) (compound_statement "{\n        if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }" { (if_statement "if (uVar25 < 0x830001) {\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }" if (parenthesized_expression "(uVar25 < 0x830001)" ( (binary_expression "uVar25 < 0x830001" identifier < number_literal) )) (compound_statement "{\n          if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar25 != 0x800000) goto LAB_0012ad0a;\n        }" { (if_statement "if ((uVar25 == 0x810000) || (uVar25 == 0x820000)) {\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }" if (parenthesized_expression "((uVar25 == 0x810000) || (uVar25 == 0x820000))" ( (binary_expression "(uVar25 == 0x810000) || (uVar25 == 0x820000)" (parenthesized_expression "(uVar25 == 0x810000)" ( (binary_expression "uVar25 == 0x810000" identifier == number_literal) )) || (parenthesized_expression "(uVar25 == 0x820000)" ( (binary_expression "uVar25 == 0x820000" identifier == number_literal) ))) )) (compound_statement "{\nLAB_0012c4d0:\n            eh_addr_size = 4;\n            goto LAB_0012ad0a;\n          }" { (labeled_statement "LAB_0012c4d0:\n            eh_addr_size = 4;" statement_identifier : (expression_statement "eh_addr_size = 4;" (assignment_expression "eh_addr_size = 4" identifier = number_literal) ;)) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;) })) (if_statement "if (uVar25 != 0x800000) goto LAB_0012ad0a;" if (parenthesized_expression "(uVar25 != 0x800000)" ( (binary_expression "uVar25 != 0x800000" identifier != number_literal) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) }) (else_clause "else {\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }" else (compound_statement "{\n          if (uVar25 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;\n        }" { (if_statement "if (uVar25 == 0x850000) goto LAB_0012c4d0;" if (parenthesized_expression "(uVar25 == 0x850000)" ( (binary_expression "uVar25 == 0x850000" identifier == number_literal) )) (goto_statement "goto LAB_0012c4d0;" goto statement_identifier ;)) (if_statement "if ((uVar25 != 0x860000) && (uVar25 != 0x840000)) goto LAB_0012ad0a;" if (parenthesized_expression "((uVar25 != 0x860000) && (uVar25 != 0x840000))" ( (binary_expression "(uVar25 != 0x860000) && (uVar25 != 0x840000)" (parenthesized_expression "(uVar25 != 0x860000)" ( (binary_expression "uVar25 != 0x860000" identifier != number_literal) )) && (parenthesized_expression "(uVar25 != 0x840000)" ( (binary_expression "uVar25 != 0x840000" identifier != number_literal) ))) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) }))) })) (labeled_statement "LAB_0012b791:\n      eh_addr_size = 2;" statement_identifier : (expression_statement "eh_addr_size = 2;" (assignment_expression "eh_addr_size = 2" identifier = number_literal) ;)) }))) }) (else_clause "else if (((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&\n          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)) goto LAB_0012b791;" else (if_statement "if (((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&\n          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)) goto LAB_0012b791;" if (parenthesized_expression "(((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&\n          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75))" ( (binary_expression "((uVar8 == 0x78) || (uVar8 == 0xfeb0)) &&\n          (((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)" (parenthesized_expression "((uVar8 == 0x78) || (uVar8 == 0xfeb0))" ( (binary_expression "(uVar8 == 0x78) || (uVar8 == 0xfeb0)" (parenthesized_expression "(uVar8 == 0x78)" ( (binary_expression "uVar8 == 0x78" identifier == number_literal) )) || (parenthesized_expression "(uVar8 == 0xfeb0)" ( (binary_expression "uVar8 == 0xfeb0" identifier == number_literal) ))) )) && (parenthesized_expression "(((uint)(filedata->file_header).e_flags & 0x7f) == 0x75)" ( (binary_expression "((uint)(filedata->file_header).e_flags & 0x7f) == 0x75" (parenthesized_expression "((uint)(filedata->file_header).e_flags & 0x7f)" ( (binary_expression "(uint)(filedata->file_header).e_flags & 0x7f" (field_expression "(uint)(filedata->file_header).e_flags" (call_expression "(uint)(filedata->file_header)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) ))) . field_identifier) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_0012b791;" goto statement_identifier ;)))) (labeled_statement "LAB_0012ad0a:\n  if ((filedata->file_header).e_shnum == 0) {\n    if (do_sections == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar18 = "\nSection Header:\n";\n  }\n  else {\n    uVar25 = 0;\n    do {\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    } while (uVar25 < uVar20);\n    if (do_sections == 0) {\n      return 1;\n    }\n    if (uVar20 < 2) goto LAB_0012c296;\n    pcVar18 = "\nSection Headers:\n";\n  }" statement_identifier : (if_statement "if ((filedata->file_header).e_shnum == 0) {\n    if (do_sections == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar18 = "\nSection Header:\n";\n  }\n  else {\n    uVar25 = 0;\n    do {\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    } while (uVar25 < uVar20);\n    if (do_sections == 0) {\n      return 1;\n    }\n    if (uVar20 < 2) goto LAB_0012c296;\n    pcVar18 = "\nSection Headers:\n";\n  }" if (parenthesized_expression "((filedata->file_header).e_shnum == 0)" ( (binary_expression "(filedata->file_header).e_shnum == 0" (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) == number_literal) )) (compound_statement "{\n    if (do_sections == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar18 = "\nSection Header:\n";\n  }" { (if_statement "if (do_sections == 0) {\n      return 1;\n    }" if (parenthesized_expression "(do_sections == 0)" ( (binary_expression "do_sections == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (labeled_statement "LAB_0012c296:\n    pcVar18 = "\nSection Header:\n";" statement_identifier : (expression_statement "pcVar18 = "\nSection Header:\n";" (assignment_expression "pcVar18 = "\nSection Header:\n"" identifier = (string_literal ""\nSection Header:\n"" " escape_sequence string_content escape_sequence ")) ;)) }) (else_clause "else {\n    uVar25 = 0;\n    do {\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    } while (uVar25 < uVar20);\n    if (do_sections == 0) {\n      return 1;\n    }\n    if (uVar20 < 2) goto LAB_0012c296;\n    pcVar18 = "\nSection Headers:\n";\n  }" else (compound_statement "{\n    uVar25 = 0;\n    do {\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    } while (uVar25 < uVar20);\n    if (do_sections == 0) {\n      return 1;\n    }\n    if (uVar20 < 2) goto LAB_0012c296;\n    pcVar18 = "\nSection Headers:\n";\n  }" { (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (do_statement "do {\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    } while (uVar25 < uVar20);" do (compound_statement "{\n      if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar5 = do_debug_cu_index;\n      iVar4 = do_debug_addr;\n      iVar3 = do_debug_loc;\n      iVar9 = do_debug_str;\n      uVar20 = section->sh_type;\n      if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;\n      uVar25 = uVar25 + 1;\n      section = section + 1;\n    }" { (if_statement "if (section == (Elf_Internal_Shdr *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" if (parenthesized_expression "(section == (Elf_Internal_Shdr *)0x0)" ( (binary_expression "section == (Elf_Internal_Shdr *)0x0" identifier == (cast_expression "(Elf_Internal_Shdr *)0x0" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pbVar11 = (byte *)dcgettext(0,"<none>",5);\n      }" { (expression_statement "pbVar11 = (byte *)dcgettext(0,"<none>",5);" (assignment_expression "pbVar11 = (byte *)dcgettext(0,"<none>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<none>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<none>",5)" identifier (argument_list "(0,"<none>",5)" ( number_literal , (string_literal ""<none>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" else (if_statement "if (filedata->string_table == (char *)0x0) {\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" if (parenthesized_expression "(filedata->string_table == (char *)0x0)" ( (binary_expression "filedata->string_table == (char *)0x0" (field_expression "filedata->string_table" identifier -> field_identifier) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n      }" { (expression_statement "pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar11 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else {\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" else (compound_statement "{\n        pbVar11 = (byte *)(filedata->string_table + section->sh_name);\n        if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" { (expression_statement "pbVar11 = (byte *)(filedata->string_table + section->sh_name);" (assignment_expression "pbVar11 = (byte *)(filedata->string_table + section->sh_name)" identifier = (cast_expression "(byte *)(filedata->string_table + section->sh_name)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(filedata->string_table + section->sh_name)" ( (binary_expression "filedata->string_table + section->sh_name" (field_expression "filedata->string_table" identifier -> field_identifier) + (field_expression "section->sh_name" identifier -> field_identifier)) )))) ;) (if_statement "if (filedata->string_table_length <= (ulong)section->sh_name) {\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }" if (parenthesized_expression "(filedata->string_table_length <= (ulong)section->sh_name)" ( (binary_expression "filedata->string_table_length <= (ulong)section->sh_name" (field_expression "filedata->string_table_length" identifier -> field_identifier) <= (cast_expression "(ulong)section->sh_name" ( (type_descriptor "ulong" type_identifier) ) (field_expression "section->sh_name" identifier -> field_identifier))) )) (compound_statement "{\n          pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n        }" { (expression_statement "pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar11 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) })) }))))) (expression_statement "iVar5 = do_debug_cu_index;" (assignment_expression "iVar5 = do_debug_cu_index" identifier = identifier) ;) (expression_statement "iVar4 = do_debug_addr;" (assignment_expression "iVar4 = do_debug_addr" identifier = identifier) ;) (expression_statement "iVar3 = do_debug_loc;" (assignment_expression "iVar3 = do_debug_loc" identifier = identifier) ;) (expression_statement "iVar9 = do_debug_str;" (assignment_expression "iVar9 = do_debug_str" identifier = identifier) ;) (expression_statement "uVar20 = section->sh_type;" (assignment_expression "uVar20 = section->sh_type" identifier = (field_expression "section->sh_type" identifier -> field_identifier)) ;) (if_statement "if (uVar20 == 0xb) {\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }\n      else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }" if (parenthesized_expression "(uVar20 == 0xb)" ( (binary_expression "uVar20 == 0xb" identifier == number_literal) )) (compound_statement "{\n        pcVar18 = "File contains multiple dynamic symbol tables\n";\n        if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }\n      }" { (expression_statement "pcVar18 = "File contains multiple dynamic symbol tables\n";" (assignment_expression "pcVar18 = "File contains multiple dynamic symbol tables\n"" identifier = (string_literal ""File contains multiple dynamic symbol tables\n"" " string_content escape_sequence ")) ;) (if_statement "if (dynamic_symbols == (Elf_Internal_Sym *)0x0) {\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }\n        else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }" if (parenthesized_expression "(dynamic_symbols == (Elf_Internal_Sym *)0x0)" ( (binary_expression "dynamic_symbols == (Elf_Internal_Sym *)0x0" identifier == (cast_expression "(Elf_Internal_Sym *)0x0" ( (type_descriptor "Elf_Internal_Sym *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n        }" { (if_statement "if (is_32bit_elf == 0) {\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }\n          else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n            if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }" { (if_statement "if (section->sh_entsize != 0x18) {\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }" if (parenthesized_expression "(section->sh_entsize != 0x18)" ( (binary_expression "section->sh_entsize != 0x18" (field_expression "section->sh_entsize" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n              uVar20 = 0x18;\n              bVar23 = 0x18;\n              goto LAB_0012b923;\n            }" { (expression_statement "uVar20 = 0x18;" (assignment_expression "uVar20 = 0x18" identifier = number_literal) ;) (expression_statement "bVar23 = 0x18;" (assignment_expression "bVar23 = 0x18" identifier = number_literal) ;) (goto_statement "goto LAB_0012b923;" goto statement_identifier ;) })) (labeled_statement "LAB_0012b7d2:\n            dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);" statement_identifier : (expression_statement "dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms);" (assignment_expression "dynamic_symbols = get_64bit_elf_symbols(filedata,section,&num_dynamic_syms)" identifier = (call_expression "get_64bit_elf_symbols(filedata,section,&num_dynamic_syms)" identifier (argument_list "(filedata,section,&num_dynamic_syms)" ( identifier , identifier , (pointer_expression "&num_dynamic_syms" & identifier) )))) ;)) }) (else_clause "else {\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }" else (compound_statement "{\n            if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }\n            dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);\n          }" { (if_statement "if (section->sh_entsize != 0x10) {\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }" if (parenthesized_expression "(section->sh_entsize != 0x10)" ( (binary_expression "section->sh_entsize != 0x10" (field_expression "section->sh_entsize" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n              uVar20 = 0x10;\n              bVar23 = 0x10;\nLAB_0012b923:\n              sprintf(buf,"%016lx");\n              pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(pcVar18,(ulong)uVar25,buf);\n              pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);\n              error(pcVar18,(ulong)uVar20);\n              bVar2 = is_32bit_elf;\n              section->sh_entsize = bVar23;\n              if (bVar2 == 0) goto LAB_0012b7d2;\n            }" { (expression_statement "uVar20 = 0x10;" (assignment_expression "uVar20 = 0x10" identifier = number_literal) ;) (expression_statement "bVar23 = 0x10;" (assignment_expression "bVar23 = 0x10" identifier = number_literal) ;) (labeled_statement "LAB_0012b923:\n              sprintf(buf,"%016lx");" statement_identifier : (expression_statement "sprintf(buf,"%016lx");" (call_expression "sprintf(buf,"%016lx")" identifier (argument_list "(buf,"%016lx")" ( identifier , (string_literal ""%016lx"" " string_content ") ))) ;)) (expression_statement "pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar18,(ulong)uVar25,buf);" (call_expression "error(pcVar18,(ulong)uVar25,buf)" identifier (argument_list "(pcVar18,(ulong)uVar25,buf)" ( identifier , (cast_expression "(ulong)uVar25" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier ))) ;) (expression_statement "pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5)" identifier (argument_list "(0,\n                                          "(Using the expected size of %u for the rest of this dump)\n"\n                                          ,5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar18,(ulong)uVar20);" (call_expression "error(pcVar18,(ulong)uVar20)" identifier (argument_list "(pcVar18,(ulong)uVar20)" ( identifier , (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "bVar2 = is_32bit_elf;" (assignment_expression "bVar2 = is_32bit_elf" identifier = identifier) ;) (expression_statement "section->sh_entsize = bVar23;" (assignment_expression "section->sh_entsize = bVar23" (field_expression "section->sh_entsize" identifier -> field_identifier) = identifier) ;) (if_statement "if (bVar2 == 0) goto LAB_0012b7d2;" if (parenthesized_expression "(bVar2 == 0)" ( (binary_expression "bVar2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012b7d2;" goto statement_identifier ;)) })) (expression_statement "dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms);" (assignment_expression "dynamic_symbols = get_32bit_elf_symbols(filedata,section,&num_dynamic_syms)" identifier = (call_expression "get_32bit_elf_symbols(filedata,section,&num_dynamic_syms)" identifier (argument_list "(filedata,section,&num_dynamic_syms)" ( identifier , identifier , (pointer_expression "&num_dynamic_syms" & identifier) )))) ;) }))) }) (else_clause "else {\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }" else (compound_statement "{\nLAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          error(pcVar18);\n        }" { (labeled_statement "LAB_0012b69a:\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);" statement_identifier : (expression_statement "pcVar18 = (char *)dcgettext(0,pcVar18,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,pcVar18,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar18,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar18,5)" identifier (argument_list "(0,pcVar18,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "error(pcVar18);" (call_expression "error(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) }))) }) (else_clause "else {\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }" else (compound_statement "{\n        bVar27 = uVar20 < 3;\n        bVar30 = uVar20 == 3;\n        if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n      }" { (expression_statement "bVar27 = uVar20 < 3;" (assignment_expression "bVar27 = uVar20 < 3" identifier = (binary_expression "uVar20 < 3" identifier < number_literal)) ;) (expression_statement "bVar30 = uVar20 == 3;" (assignment_expression "bVar30 = uVar20 == 3" identifier = (binary_expression "uVar20 == 3" identifier == number_literal)) ;) (if_statement "if (bVar30) {\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }\n        else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(bVar30)" ( identifier )) (compound_statement "{\n          lVar19 = 8;\n          pbVar22 = pbVar11;\n          pbVar24 = (byte *)".dynstr";\n          do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);\n          if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }\n        }" { (expression_statement "lVar19 = 8;" (assignment_expression "lVar19 = 8" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".dynstr";" (assignment_expression "pbVar24 = (byte *)".dynstr"" identifier = (cast_expression "(byte *)".dynstr"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".dynstr"" " string_content "))) ;) (do_statement "do {\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          } while (bVar30);" do (compound_statement "{\n            if (lVar19 == 0) break;\n            lVar19 = lVar19 + -1;\n            bVar27 = *pbVar22 < *pbVar24;\n            bVar30 = *pbVar22 == *pbVar24;\n            pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n          }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) == bVar27) {\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }" if (parenthesized_expression "((!bVar27 && !bVar30) == bVar27)" ( (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier) )) (compound_statement "{\n            if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);\n            dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);\n            dynamic_strings_length = 0;\n            if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }\n          }" { (if_statement "if (dynamic_strings != (char *)0x0) {\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }" if (parenthesized_expression "(dynamic_strings != (char *)0x0)" ( (binary_expression "dynamic_strings != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              pcVar18 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }" { (expression_statement "pcVar18 = "File contains multiple dynamic string tables\n";" (assignment_expression "pcVar18 = "File contains multiple dynamic string tables\n"" identifier = (string_literal ""File contains multiple dynamic string tables\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b69a;" goto statement_identifier ;) })) (expression_statement "pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5);" (assignment_expression "pFVar15 = (Filedata *)dcgettext(0,"dynamic strings",5)" identifier = (cast_expression "(Filedata *)dcgettext(0,"dynamic strings",5)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"dynamic strings",5)" identifier (argument_list "(0,"dynamic strings",5)" ( number_literal , (string_literal ""dynamic strings"" " string_content ") , number_literal ))))) ;) (expression_statement "dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15);" (assignment_expression "dynamic_strings =\n                 (char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15)" identifier = (cast_expression "(char *)get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "get_data((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15)" identifier (argument_list "((void *)0x0,(Filedata *)&filedata->handle,\n                                  (ulong)&filedata->file_size,section->sh_offset,1,\n                                  (char *)section->sh_size,pFVar15)" ( (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (cast_expression "(Filedata *)&filedata->handle" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&filedata->handle" & (field_expression "filedata->handle" identifier -> field_identifier))) , (binary_expression "(ulong)&filedata->file_size" (parenthesized_expression "(ulong)" ( identifier )) & (field_expression "filedata->file_size" identifier -> field_identifier)) , (field_expression "section->sh_offset" identifier -> field_identifier) , number_literal , (cast_expression "(char *)section->sh_size" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (field_expression "section->sh_size" identifier -> field_identifier)) , identifier ))))) ;) (expression_statement "dynamic_strings_length = 0;" (assignment_expression "dynamic_strings_length = 0" identifier = number_literal) ;) (if_statement "if (dynamic_strings != (char *)0x0) {\n              dynamic_strings_length = section->sh_size;\n            }" if (parenthesized_expression "(dynamic_strings != (char *)0x0)" ( (binary_expression "dynamic_strings != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              dynamic_strings_length = section->sh_size;\n            }" { (expression_statement "dynamic_strings_length = section->sh_size;" (assignment_expression "dynamic_strings_length = section->sh_size" identifier = (field_expression "section->sh_size" identifier -> field_identifier)) ;) })) }) (else_clause "else {\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }" else (compound_statement "{\nLAB_0012b1ff:\n            bVar27 = false;\n            bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);\n            if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;\n            lVar19 = 7;\n            pbVar22 = pbVar11;\n            pbVar24 = (byte *)".debug_";\n            do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);\n            bVar28 = false;\n            bVar27 = (!bVar27 && !bVar30) == bVar27;\n            if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');\n          }" { (labeled_statement "LAB_0012b1ff:\n            bVar27 = false;" statement_identifier : (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;)) (expression_statement "bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0);" (assignment_expression "bVar30 = ((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0)" identifier = (binary_expression "((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0) && (do_debug_info == 0 && do_debugging == 0)" (parenthesized_expression "((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0)" ( (binary_expression "(((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0) &&\n                     do_debug_links == 0" (parenthesized_expression "(((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0)" ( (binary_expression "((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0) && do_debug_cu_index == 0" (parenthesized_expression "((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0)" ( (binary_expression "(((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0) && do_debug_addr == 0" (parenthesized_expression "(((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0)" ( (binary_expression "((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0) &&\n                        do_debug_ranges == 0" (parenthesized_expression "((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0)" ( (binary_expression "(((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0) && do_debug_loc == 0" (parenthesized_expression "(((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0)" ( (binary_expression "((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0) && do_debug_str == 0" (parenthesized_expression "((((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0)" ( (binary_expression "(((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0) &&\n                           do_debug_macinfo == 0" (parenthesized_expression "(((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0)" ( (binary_expression "((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0) && do_debug_frames == 0" (parenthesized_expression "((((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0)" ( (binary_expression "(((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0) &&\n                             do_debug_aranges == 0" (parenthesized_expression "(((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0)" ( (binary_expression "((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0) && do_debug_pubtypes == 0" (parenthesized_expression "((do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0)" ( (binary_expression "(do_debug_abbrevs == 0 && do_debug_lines == 0) &&\n                               do_debug_pubnames == 0" (parenthesized_expression "(do_debug_abbrevs == 0 && do_debug_lines == 0)" ( (binary_expression "do_debug_abbrevs == 0 && do_debug_lines == 0" (binary_expression "do_debug_abbrevs == 0" identifier == number_literal) && (binary_expression "do_debug_lines == 0" identifier == number_literal)) )) && (binary_expression "do_debug_pubnames == 0" identifier == number_literal)) )) && (binary_expression "do_debug_pubtypes == 0" identifier == number_literal)) )) && (binary_expression "do_debug_aranges == 0" identifier == number_literal)) )) && (binary_expression "do_debug_frames == 0" identifier == number_literal)) )) && (binary_expression "do_debug_macinfo == 0" identifier == number_literal)) )) && (binary_expression "do_debug_str == 0" identifier == number_literal)) )) && (binary_expression "do_debug_loc == 0" identifier == number_literal)) )) && (binary_expression "do_debug_ranges == 0" identifier == number_literal)) )) && (binary_expression "do_debug_addr == 0" identifier == number_literal)) )) && (binary_expression "do_debug_cu_index == 0" identifier == number_literal)) )) && (binary_expression "do_debug_links == 0" identifier == number_literal)) )) && (parenthesized_expression "(do_debug_info == 0 && do_debugging == 0)" ( (binary_expression "do_debug_info == 0 && do_debugging == 0" (binary_expression "do_debug_info == 0" identifier == number_literal) && (binary_expression "do_debugging == 0" identifier == number_literal)) )))) ;) (if_statement "if (((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)) goto LAB_0012b2b0;" if (parenthesized_expression "(((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0))" ( (binary_expression "((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0) &&\n                (do_debug_info == 0 && do_debugging == 0)" (parenthesized_expression "((((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0)" ( (binary_expression "(((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0) && do_debug_links == 0" (parenthesized_expression "(((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0)" ( (binary_expression "((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0) &&\n                 do_debug_cu_index == 0" (parenthesized_expression "((((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0)" ( (binary_expression "(((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0) && do_debug_addr == 0" (parenthesized_expression "(((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0)" ( (binary_expression "((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0) && do_debug_ranges == 0" (parenthesized_expression "((((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0)" ( (binary_expression "(((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0) &&\n                    do_debug_loc == 0" (parenthesized_expression "(((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0)" ( (binary_expression "((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0) && do_debug_str == 0" (parenthesized_expression "((((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0)" ( (binary_expression "(((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0) && do_debug_macinfo == 0" (parenthesized_expression "(((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0)" ( (binary_expression "((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0) &&\n                       do_debug_frames == 0" (parenthesized_expression "((((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0)" ( (binary_expression "(((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0) && do_debug_aranges == 0" (parenthesized_expression "(((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0)" ( (binary_expression "((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)\n                         && do_debug_pubtypes == 0" (parenthesized_expression "((do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0)" ( (binary_expression "(do_debug_abbrevs == 0 && do_debug_lines == 0) && do_debug_pubnames == 0" (parenthesized_expression "(do_debug_abbrevs == 0 && do_debug_lines == 0)" ( (binary_expression "do_debug_abbrevs == 0 && do_debug_lines == 0" (binary_expression "do_debug_abbrevs == 0" identifier == number_literal) && (binary_expression "do_debug_lines == 0" identifier == number_literal)) )) && (binary_expression "do_debug_pubnames == 0" identifier == number_literal)) )) && (binary_expression "do_debug_pubtypes == 0" identifier == number_literal)) )) && (binary_expression "do_debug_aranges == 0" identifier == number_literal)) )) && (binary_expression "do_debug_frames == 0" identifier == number_literal)) )) && (binary_expression "do_debug_macinfo == 0" identifier == number_literal)) )) && (binary_expression "do_debug_str == 0" identifier == number_literal)) )) && (binary_expression "do_debug_loc == 0" identifier == number_literal)) )) && (binary_expression "do_debug_ranges == 0" identifier == number_literal)) )) && (binary_expression "do_debug_addr == 0" identifier == number_literal)) )) && (binary_expression "do_debug_cu_index == 0" identifier == number_literal)) )) && (binary_expression "do_debug_links == 0" identifier == number_literal)) )) && (parenthesized_expression "(do_debug_info == 0 && do_debugging == 0)" ( (binary_expression "do_debug_info == 0 && do_debugging == 0" (binary_expression "do_debug_info == 0" identifier == number_literal) && (binary_expression "do_debugging == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_0012b2b0;" goto statement_identifier ;)) (expression_statement "lVar19 = 7;" (assignment_expression "lVar19 = 7" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".debug_";" (assignment_expression "pbVar24 = (byte *)".debug_"" identifier = (cast_expression "(byte *)".debug_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_"" " string_content "))) ;) (do_statement "do {\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            } while (bVar30);" do (compound_statement "{\n              if (lVar19 == 0) break;\n              lVar19 = lVar19 + -1;\n              bVar27 = *pbVar22 < *pbVar24;\n              bVar30 = *pbVar22 == *pbVar24;\n              pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n            }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar27 = (!bVar27 && !bVar30) == bVar27;" (assignment_expression "bVar27 = (!bVar27 && !bVar30) == bVar27" identifier = (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar27) {\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }" if (parenthesized_expression "(bVar27)" ( identifier )) (compound_statement "{\nLAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;\n              if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }\n              if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }\n            }" { (labeled_statement "LAB_0012b3f7:\n              pbVar22 = pbVar11 + 7;" statement_identifier : (expression_statement "pbVar22 = pbVar11 + 7;" (assignment_expression "pbVar22 = pbVar11 + 7" identifier = (binary_expression "pbVar11 + 7" identifier + number_literal)) ;)) (if_statement "if (pbVar11[1] == 0x7a) {\n                pbVar22 = pbVar11 + 8;\n              }" if (parenthesized_expression "(pbVar11[1] == 0x7a)" ( (binary_expression "pbVar11[1] == 0x7a" (subscript_expression "pbVar11[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                pbVar22 = pbVar11 + 8;\n              }" { (expression_statement "pbVar22 = pbVar11 + 8;" (assignment_expression "pbVar22 = pbVar11 + 8" identifier = (binary_expression "pbVar11 + 8" identifier + number_literal)) ;) })) (if_statement "if (do_debugging == 0) {\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }" if (parenthesized_expression "(do_debugging == 0)" ( (binary_expression "do_debugging == 0" identifier == number_literal) )) (compound_statement "{\n                bVar30 = false;\n                bVar27 = do_debug_info == 0;\n                if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }\n              }" { (expression_statement "bVar30 = false;" (assignment_expression "bVar30 = false" identifier = false) ;) (expression_statement "bVar27 = do_debug_info == 0;" (assignment_expression "bVar27 = do_debug_info == 0" identifier = (binary_expression "do_debug_info == 0" identifier == number_literal)) ;) (if_statement "if (bVar27) {\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }" if (parenthesized_expression "(bVar27)" ( identifier )) (compound_statement "{\nLAB_0012b446:\n                  bVar27 = false;\n                  bVar30 = do_debug_abbrevs == 0;\n                  if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }\n                  bVar27 = false;\n                  bVar30 = do_debug_lines == 0;\n                  if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }\n                }" { (labeled_statement "LAB_0012b446:\n                  bVar27 = false;" statement_identifier : (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;)) (expression_statement "bVar30 = do_debug_abbrevs == 0;" (assignment_expression "bVar30 = do_debug_abbrevs == 0" identifier = (binary_expression "do_debug_abbrevs == 0" identifier == number_literal)) ;) (if_statement "if (!bVar30) {\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }" if (parenthesized_expression "(!bVar30)" ( (unary_expression "!bVar30" ! identifier) )) (compound_statement "{\n                    lVar19 = 6;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1826c0;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                  }" { (expression_statement "lVar19 = 6;" (assignment_expression "lVar19 = 6" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1826c0;" (assignment_expression "pbVar24 = (byte *)0x1826c0" identifier = (cast_expression "(byte *)0x1826c0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);" do (compound_statement "{\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar11 < *pbVar24;" (assignment_expression "bVar27 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar11 == *pbVar24;" (assignment_expression "bVar30 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar27 && !bVar30) == bVar27)" ( (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;) (expression_statement "bVar30 = do_debug_lines == 0;" (assignment_expression "bVar30 = do_debug_lines == 0" identifier = (binary_expression "do_debug_lines == 0" identifier == number_literal)) ;) (if_statement "if (bVar30) {\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }" if (parenthesized_expression "(bVar30)" ( identifier )) (compound_statement "{\nLAB_0012b490:\n                    bVar27 = false;\n                    bVar30 = do_debug_pubnames == 0;\n                    if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }" { (labeled_statement "LAB_0012b490:\n                    bVar27 = false;" statement_identifier : (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;)) (expression_statement "bVar30 = do_debug_pubnames == 0;" (assignment_expression "bVar30 = do_debug_pubnames == 0" identifier = (binary_expression "do_debug_pubnames == 0" identifier == number_literal)) ;) (if_statement "if (bVar30) {\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" if (parenthesized_expression "(bVar30)" ( identifier )) (compound_statement "{\n                      bVar27 = false;\n                      bVar30 = do_debug_pubtypes == 0;\n                      if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }\n                    }" { (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;) (expression_statement "bVar30 = do_debug_pubtypes == 0;" (assignment_expression "bVar30 = do_debug_pubtypes == 0" identifier = (binary_expression "do_debug_pubtypes == 0" identifier == number_literal)) ;) (if_statement "if (bVar30) {\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }" if (parenthesized_expression "(bVar30)" ( identifier )) (compound_statement "{\nLAB_0012b4dd:\n                        bVar27 = false;\n                        bVar30 = do_debug_aranges == 0;\n                        if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }\n                        bVar27 = false;\n                        bVar30 = do_debug_ranges == 0;\n                        if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }\n                      }" { (labeled_statement "LAB_0012b4dd:\n                        bVar27 = false;" statement_identifier : (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;)) (expression_statement "bVar30 = do_debug_aranges == 0;" (assignment_expression "bVar30 = do_debug_aranges == 0" identifier = (binary_expression "do_debug_aranges == 0" identifier == number_literal)) ;) (if_statement "if (!bVar30) {\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }" if (parenthesized_expression "(!bVar30)" ( (unary_expression "!bVar30" ! identifier) )) (compound_statement "{\n                          lVar19 = 7;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1826ce;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                        }" { (expression_statement "lVar19 = 7;" (assignment_expression "lVar19 = 7" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1826ce;" (assignment_expression "pbVar24 = (byte *)0x1826ce" identifier = (cast_expression "(byte *)0x1826ce" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);" do (compound_statement "{\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar11 < *pbVar24;" (assignment_expression "bVar27 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar11 == *pbVar24;" (assignment_expression "bVar30 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar27 && !bVar30) == bVar27)" ( (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;) (expression_statement "bVar30 = do_debug_ranges == 0;" (assignment_expression "bVar30 = do_debug_ranges == 0" identifier = (binary_expression "do_debug_ranges == 0" identifier == number_literal)) ;) (if_statement "if (bVar30) {\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }" if (parenthesized_expression "(bVar30)" ( identifier )) (compound_statement "{\nLAB_0012b547:\n                          bVar27 = false;\n                          bVar30 = do_debug_frames == 0;\n                          if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }\n                          bVar27 = false;\n                          bVar30 = do_debug_macinfo == 0;\n                          if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;\n                        }" { (labeled_statement "LAB_0012b547:\n                          bVar27 = false;" statement_identifier : (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;)) (expression_statement "bVar30 = do_debug_frames == 0;" (assignment_expression "bVar30 = do_debug_frames == 0" identifier = (binary_expression "do_debug_frames == 0" identifier == number_literal)) ;) (if_statement "if (!bVar30) {\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }" if (parenthesized_expression "(!bVar30)" ( (unary_expression "!bVar30" ! identifier) )) (compound_statement "{\n                            lVar19 = 5;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x18246b;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                          }" { (expression_statement "lVar19 = 5;" (assignment_expression "lVar19 = 5" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x18246b;" (assignment_expression "pbVar24 = (byte *)0x18246b" identifier = (cast_expression "(byte *)0x18246b" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);" do (compound_statement "{\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar11 < *pbVar24;" (assignment_expression "bVar27 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar11 == *pbVar24;" (assignment_expression "bVar30 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar27 && !bVar30) == bVar27)" ( (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;) (expression_statement "bVar30 = do_debug_macinfo == 0;" (assignment_expression "bVar30 = do_debug_macinfo == 0" identifier = (binary_expression "do_debug_macinfo == 0" identifier == number_literal)) ;) (if_statement "if (!bVar30) {\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }" if (parenthesized_expression "(!bVar30)" ( (unary_expression "!bVar30" ! identifier) )) (compound_statement "{\n                            lVar19 = 7;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x1824f6;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);\n                            if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;\n                          }" { (expression_statement "lVar19 = 7;" (assignment_expression "lVar19 = 7" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1824f6;" (assignment_expression "pbVar24 = (byte *)0x1824f6" identifier = (cast_expression "(byte *)0x1824f6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar30);" do (compound_statement "{\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar27 = *pbVar11 < *pbVar24;\n                              bVar30 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar11 < *pbVar24;" (assignment_expression "bVar27 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar11 == *pbVar24;" (assignment_expression "bVar30 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if (((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))\n                            goto LAB_0012b3c0;" if (parenthesized_expression "(((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0))" ( (binary_expression "((!bVar27 && !bVar30) == bVar27) ||\n                               (iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0)" (parenthesized_expression "((!bVar27 && !bVar30) == bVar27)" ( (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier) )) || (parenthesized_expression "(iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0)" ( (comma_expression "iVar10 = strncmp((char *)pbVar22,"macro",5), iVar10 == 0" (assignment_expression "iVar10 = strncmp((char *)pbVar22,"macro",5)" identifier = (call_expression "strncmp((char *)pbVar22,"macro",5)" identifier (argument_list "((char *)pbVar22,"macro",5)" ( (cast_expression "(char *)pbVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""macro"" " string_content ") , number_literal )))) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (if_statement "if (((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))\n                          goto LAB_0012ad90;" if (parenthesized_expression "(((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))))" ( (binary_expression "((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))) &&\n                             ((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0)))))" (parenthesized_expression "((((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0))))" ( (binary_expression "(((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))) &&\n                              ((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))" (parenthesized_expression "(((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0))))))" ( (binary_expression "((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)) &&\n                               ((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))" (parenthesized_expression "((iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0))" ( (binary_expression "(iVar9 == 0) ||\n                                (iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0)" ( (comma_expression "iVar9 = strncmp((char *)pbVar22,"str",3), iVar9 != 0" (assignment_expression "iVar9 = strncmp((char *)pbVar22,"str",3)" identifier = (call_expression "strncmp((char *)pbVar22,"str",3)" identifier (argument_list "((char *)pbVar22,"str",3)" ( (cast_expression "(char *)pbVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""str"" " string_content ") , number_literal )))) , (binary_expression "iVar9 != 0" identifier != number_literal)) ))) )) && (parenthesized_expression "((iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))))" ( (parenthesized_expression "(iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0))))" ( (binary_expression "iVar3 == 0 ||\n                                ((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))" (binary_expression "iVar3 == 0" identifier == number_literal) || (parenthesized_expression "((iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)))" ( (parenthesized_expression "(iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0))" ( (comma_expression "iVar9 = strncmp((char *)pbVar22,"loc",3), iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)" (assignment_expression "iVar9 = strncmp((char *)pbVar22,"loc",3)" identifier = (call_expression "strncmp((char *)pbVar22,"loc",3)" identifier (argument_list "((char *)pbVar22,"loc",3)" ( (cast_expression "(char *)pbVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loc"" " string_content ") , number_literal )))) , (binary_expression "iVar9 != 0 &&\n                                 (iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)" (binary_expression "iVar9 != 0" identifier != number_literal) && (parenthesized_expression "(iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0)" ( (comma_expression "iVar9 = strncmp((char *)pbVar22,"loclists",8), iVar9 != 0" (assignment_expression "iVar9 = strncmp((char *)pbVar22,"loclists",8)" identifier = (call_expression "strncmp((char *)pbVar22,"loclists",8)" identifier (argument_list "((char *)pbVar22,"loclists",8)" ( (cast_expression "(char *)pbVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loclists"" " string_content ") , number_literal )))) , (binary_expression "iVar9 != 0" identifier != number_literal)) )))) )) ))) )) ))) )) && (parenthesized_expression "((iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)))" ( (parenthesized_expression "(iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0))" ( (binary_expression "iVar4 == 0 ||\n                               (iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)" (binary_expression "iVar4 == 0" identifier == number_literal) || (parenthesized_expression "(iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0)" ( (comma_expression "iVar9 = strncmp((char *)pbVar22,"addr",4), iVar9 != 0" (assignment_expression "iVar9 = strncmp((char *)pbVar22,"addr",4)" identifier = (call_expression "strncmp((char *)pbVar22,"addr",4)" identifier (argument_list "((char *)pbVar22,"addr",4)" ( (cast_expression "(char *)pbVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""addr"" " string_content ") , number_literal )))) , (binary_expression "iVar9 != 0" identifier != number_literal)) ))) )) ))) )) && (parenthesized_expression "((iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0)))))" ( (parenthesized_expression "(iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))))" ( (binary_expression "iVar5 == 0 ||\n                              ((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0)))" (binary_expression "iVar5 == 0" identifier == number_literal) || (parenthesized_expression "((iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0)))" ( (parenthesized_expression "(iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0))" ( (comma_expression "iVar9 = strncmp((char *)pbVar22,"cu_index",8), iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0)" (assignment_expression "iVar9 = strncmp((char *)pbVar22,"cu_index",8)" identifier = (call_expression "strncmp((char *)pbVar22,"cu_index",8)" identifier (argument_list "((char *)pbVar22,"cu_index",8)" ( (cast_expression "(char *)pbVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""cu_index"" " string_content ") , number_literal )))) , (binary_expression "iVar9 != 0 &&\n                               (iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0)" (binary_expression "iVar9 != 0" identifier != number_literal) && (parenthesized_expression "(iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0)" ( (comma_expression "iVar9 = strncmp((char *)pbVar22,"tu_index",8), iVar9 != 0" (assignment_expression "iVar9 = strncmp((char *)pbVar22,"tu_index",8)" identifier = (call_expression "strncmp((char *)pbVar22,"tu_index",8)" identifier (argument_list "((char *)pbVar22,"tu_index",8)" ( (cast_expression "(char *)pbVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""tu_index"" " string_content ") , number_literal )))) , (binary_expression "iVar9 != 0" identifier != number_literal)) )))) )) ))) )) ))) )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) }) (else_clause "else {\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }" else (compound_statement "{\n                          lVar19 = 6;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x185a13;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);\n                          bVar28 = false;\n                          bVar27 = (!bVar27 && !bVar30) == bVar27;\n                          if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }\n                        }" { (expression_statement "lVar19 = 6;" (assignment_expression "lVar19 = 6" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x185a13;" (assignment_expression "pbVar24 = (byte *)0x185a13" identifier = (cast_expression "(byte *)0x185a13" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar30);" do (compound_statement "{\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar27 = *pbVar11 < *pbVar24;\n                            bVar30 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar11 < *pbVar24;" (assignment_expression "bVar27 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar11 == *pbVar24;" (assignment_expression "bVar30 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar27 = (!bVar27 && !bVar30) == bVar27;" (assignment_expression "bVar27 = (!bVar27 && !bVar30) == bVar27" identifier = (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar27) {\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }" if (parenthesized_expression "(!bVar27)" ( (unary_expression "!bVar27" ! identifier) )) (compound_statement "{\n                            lVar19 = 8;\n                            pbVar11 = pbVar22;\n                            pbVar24 = (byte *)0x182607;\n                            do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);\n                            if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;\n                          }" { (expression_statement "lVar19 = 8;" (assignment_expression "lVar19 = 8" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x182607;" (assignment_expression "pbVar24 = (byte *)0x182607" identifier = (cast_expression "(byte *)0x182607" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            } while (bVar27);" do (compound_statement "{\n                              if (lVar19 == 0) break;\n                              lVar19 = lVar19 + -1;\n                              bVar28 = *pbVar11 < *pbVar24;\n                              bVar27 = *pbVar11 == *pbVar24;\n                              pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                              pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                            }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar11 < *pbVar24;" (assignment_expression "bVar28 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar11 == *pbVar24;" (assignment_expression "bVar27 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (if_statement "if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b547;" if (parenthesized_expression "((!bVar28 && !bVar27) != bVar28)" ( (binary_expression "(!bVar28 && !bVar27) != bVar28" (parenthesized_expression "(!bVar28 && !bVar27)" ( (binary_expression "!bVar28 && !bVar27" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b547;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }" else (compound_statement "{\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        bVar27 = (!bVar27 && !bVar30) == bVar27;\njoined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }\n                      }" { (expression_statement "lVar19 = 8;" (assignment_expression "lVar19 = 8" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1862bf;" (assignment_expression "pbVar24 = (byte *)0x1862bf" identifier = (cast_expression "(byte *)0x1862bf" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);" do (compound_statement "{\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar11 < *pbVar24;\n                          bVar30 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar11 < *pbVar24;" (assignment_expression "bVar27 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar11 == *pbVar24;" (assignment_expression "bVar30 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (expression_statement "bVar27 = (!bVar27 && !bVar30) == bVar27;" (assignment_expression "bVar27 = (!bVar27 && !bVar30) == bVar27" identifier = (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier)) ;) (labeled_statement "joined_r0x0012c500:\n                        if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }" statement_identifier : (if_statement "if (!bVar27) {\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }" if (parenthesized_expression "(!bVar27)" ( (unary_expression "!bVar27" ! identifier) )) (compound_statement "{\n                          pcVar18 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar30 = false;\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)(pcVar18 + 7);\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;\n                        }" { (expression_statement "pcVar18 = ".debug_gnu_pubtypes";" (assignment_expression "pcVar18 = ".debug_gnu_pubtypes"" identifier = (string_literal "".debug_gnu_pubtypes"" " string_content ")) ;) (labeled_statement "LAB_0012b4cb:\n                          bVar30 = false;" statement_identifier : (expression_statement "bVar30 = false;" (assignment_expression "bVar30 = false" identifier = false) ;)) (expression_statement "lVar19 = 0xc;" (assignment_expression "lVar19 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)(pcVar18 + 7);" (assignment_expression "pbVar24 = (byte *)(pcVar18 + 7)" identifier = (cast_expression "(byte *)(pcVar18 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar18 + 7)" ( (binary_expression "pcVar18 + 7" identifier + number_literal) )))) ;) (do_statement "do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);" do (compound_statement "{\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar30 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar30 = *pbVar11 < *pbVar24;" (assignment_expression "bVar30 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar11 == *pbVar24;" (assignment_expression "bVar27 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (if_statement "if ((!bVar30 && !bVar27) != bVar30) goto LAB_0012b4dd;" if (parenthesized_expression "((!bVar30 && !bVar27) != bVar30)" ( (binary_expression "(!bVar30 && !bVar27) != bVar30" (parenthesized_expression "(!bVar30 && !bVar27)" ( (binary_expression "!bVar30 && !bVar27" (unary_expression "!bVar30" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b4dd;" goto statement_identifier ;)) }))) }))) }) (else_clause "else {\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" else (compound_statement "{\n                      lVar19 = 8;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x1862ac;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" { (expression_statement "lVar19 = 8;" (assignment_expression "lVar19 = 8" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1862ac;" (assignment_expression "pbVar24 = (byte *)0x1862ac" identifier = (cast_expression "(byte *)0x1862ac" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);" do (compound_statement "{\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar11 < *pbVar24;\n                        bVar30 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar11 < *pbVar24;" (assignment_expression "bVar27 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar11 == *pbVar24;" (assignment_expression "bVar30 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) != bVar27) {\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }" if (parenthesized_expression "((!bVar27 && !bVar30) != bVar27)" ( (binary_expression "(!bVar27 && !bVar30) != bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) != identifier) )) (compound_statement "{\n                        pcVar18 = ".debug_gnu_pubnames";\n                        bVar30 = false;\n                        bVar27 = do_debug_pubtypes == 0;\n                        if (bVar27) goto LAB_0012b4cb;\n                        lVar19 = 8;\n                        pbVar11 = pbVar22;\n                        pbVar24 = (byte *)0x1862bf;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);\n                        bVar28 = false;\n                        bVar27 = (!bVar30 && !bVar27) == bVar30;\n                        if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }\n                      }" { (expression_statement "pcVar18 = ".debug_gnu_pubnames";" (assignment_expression "pcVar18 = ".debug_gnu_pubnames"" identifier = (string_literal "".debug_gnu_pubnames"" " string_content ")) ;) (expression_statement "bVar30 = false;" (assignment_expression "bVar30 = false" identifier = false) ;) (expression_statement "bVar27 = do_debug_pubtypes == 0;" (assignment_expression "bVar27 = do_debug_pubtypes == 0" identifier = (binary_expression "do_debug_pubtypes == 0" identifier == number_literal)) ;) (if_statement "if (bVar27) goto LAB_0012b4cb;" if (parenthesized_expression "(bVar27)" ( identifier )) (goto_statement "goto LAB_0012b4cb;" goto statement_identifier ;)) (expression_statement "lVar19 = 8;" (assignment_expression "lVar19 = 8" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1862bf;" (assignment_expression "pbVar24 = (byte *)0x1862bf" identifier = (cast_expression "(byte *)0x1862bf" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar27);" do (compound_statement "{\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar30 = *pbVar11 < *pbVar24;\n                          bVar27 = *pbVar11 == *pbVar24;\n                          pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar30 = *pbVar11 < *pbVar24;" (assignment_expression "bVar30 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar11 == *pbVar24;" (assignment_expression "bVar27 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar27 = (!bVar30 && !bVar27) == bVar30;" (assignment_expression "bVar27 = (!bVar30 && !bVar27) == bVar30" identifier = (binary_expression "(!bVar30 && !bVar27) == bVar30" (parenthesized_expression "(!bVar30 && !bVar27)" ( (binary_expression "!bVar30 && !bVar27" (unary_expression "!bVar30" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar27) {\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }" if (parenthesized_expression "(!bVar27)" ( (unary_expression "!bVar27" ! identifier) )) (compound_statement "{\n                          lVar19 = 0xc;\n                          pbVar11 = pbVar22;\n                          pbVar24 = (byte *)0x1824cd;\n                          do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);\n                          bVar27 = (!bVar28 && !bVar27) == bVar28;\n                          goto joined_r0x0012c500;\n                        }" { (expression_statement "lVar19 = 0xc;" (assignment_expression "lVar19 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1824cd;" (assignment_expression "pbVar24 = (byte *)0x1824cd" identifier = (cast_expression "(byte *)0x1824cd" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          } while (bVar27);" do (compound_statement "{\n                            if (lVar19 == 0) break;\n                            lVar19 = lVar19 + -1;\n                            bVar28 = *pbVar11 < *pbVar24;\n                            bVar27 = *pbVar11 == *pbVar24;\n                            pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                            pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                          }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar11 < *pbVar24;" (assignment_expression "bVar28 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar11 == *pbVar24;" (assignment_expression "bVar27 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (expression_statement "bVar27 = (!bVar28 && !bVar27) == bVar28;" (assignment_expression "bVar27 = (!bVar28 && !bVar27) == bVar28" identifier = (binary_expression "(!bVar28 && !bVar27) == bVar28" (parenthesized_expression "(!bVar28 && !bVar27)" ( (binary_expression "!bVar28 && !bVar27" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) == identifier)) ;) (goto_statement "goto joined_r0x0012c500;" goto statement_identifier ;) })) })) }))) }) (else_clause "else {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }" else (compound_statement "{\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x182493;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar28 = false;\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }\n                  }" { (expression_statement "lVar19 = 5;" (assignment_expression "lVar19 = 5" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x182493;" (assignment_expression "pbVar24 = (byte *)0x182493" identifier = (cast_expression "(byte *)0x182493" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);" do (compound_statement "{\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar11 < *pbVar24;\n                      bVar30 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar11 < *pbVar24;" (assignment_expression "bVar27 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar11 == *pbVar24;" (assignment_expression "bVar30 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar27 = (!bVar27 && !bVar30) == bVar27;" (assignment_expression "bVar27 = (!bVar27 && !bVar30) == bVar27" identifier = (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar27) {\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }" if (parenthesized_expression "(!bVar27)" ( (unary_expression "!bVar27" ! identifier) )) (compound_statement "{\n                      lVar19 = 5;\n                      pbVar11 = pbVar22;\n                      pbVar24 = (byte *)0x16ac78;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);\n                      if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;\n                    }" { (expression_statement "lVar19 = 5;" (assignment_expression "lVar19 = 5" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x16ac78;" (assignment_expression "pbVar24 = (byte *)0x16ac78" identifier = (cast_expression "(byte *)0x16ac78" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar27);" do (compound_statement "{\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar28 = *pbVar11 < *pbVar24;\n                        bVar27 = *pbVar11 == *pbVar24;\n                        pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar11 < *pbVar24;" (assignment_expression "bVar28 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar11 == *pbVar24;" (assignment_expression "bVar27 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (if_statement "if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b490;" if (parenthesized_expression "((!bVar28 && !bVar27) != bVar28)" ( (binary_expression "(!bVar28 && !bVar27) != bVar28" (parenthesized_expression "(!bVar28 && !bVar27)" ( (binary_expression "!bVar28 && !bVar27" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b490;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }" else (compound_statement "{\n                  lVar19 = 4;\n                  pbVar11 = pbVar22;\n                  pbVar24 = (byte *)0x1663a6;\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);\n                  bVar28 = false;\n                  bVar27 = (!bVar30 && !bVar27) == bVar30;\n                  if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }\n                }" { (expression_statement "lVar19 = 4;" (assignment_expression "lVar19 = 4" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1663a6;" (assignment_expression "pbVar24 = (byte *)0x1663a6" identifier = (cast_expression "(byte *)0x1663a6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar27);" do (compound_statement "{\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar30 = *pbVar11 < *pbVar24;\n                    bVar27 = *pbVar11 == *pbVar24;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar30 = *pbVar11 < *pbVar24;" (assignment_expression "bVar30 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar11 == *pbVar24;" (assignment_expression "bVar27 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar27 = (!bVar30 && !bVar27) == bVar30;" (assignment_expression "bVar27 = (!bVar30 && !bVar27) == bVar30" identifier = (binary_expression "(!bVar30 && !bVar27) == bVar30" (parenthesized_expression "(!bVar30 && !bVar27)" ( (binary_expression "!bVar30 && !bVar27" (unary_expression "!bVar30" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar27) {\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }" if (parenthesized_expression "(!bVar27)" ( (unary_expression "!bVar27" ! identifier) )) (compound_statement "{\n                    lVar19 = 5;\n                    pbVar11 = pbVar22;\n                    pbVar24 = (byte *)0x1857df;\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;\n                  }" { (expression_statement "lVar19 = 5;" (assignment_expression "lVar19 = 5" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar22;" (assignment_expression "pbVar11 = pbVar22" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)0x1857df;" (assignment_expression "pbVar24 = (byte *)0x1857df" identifier = (cast_expression "(byte *)0x1857df" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);" do (compound_statement "{\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar11 < *pbVar24;\n                      bVar27 = *pbVar11 == *pbVar24;\n                      pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar11 < *pbVar24;" (assignment_expression "bVar28 = *pbVar11 < *pbVar24" identifier = (binary_expression "*pbVar11 < *pbVar24" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar11 == *pbVar24;" (assignment_expression "bVar27 = *pbVar11 == *pbVar24" identifier = (binary_expression "*pbVar11 == *pbVar24" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (if_statement "if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b446;" if (parenthesized_expression "((!bVar28 && !bVar27) != bVar28)" ( (binary_expression "(!bVar28 && !bVar27) != bVar28" (parenthesized_expression "(!bVar28 && !bVar27)" ( (binary_expression "!bVar28 && !bVar27" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b446;" goto statement_identifier ;)) })) }))) })) }) (else_clause "else {\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }" else (compound_statement "{\n              lVar19 = 8;\n              pbVar22 = pbVar11;\n              pbVar24 = (byte *)".zdebug_";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);\n              if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;\n              bVar27 = false;\n              bVar30 = do_debug_info == 0 && do_debugging == 0;\n              if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }\n            }" { (expression_statement "lVar19 = 8;" (assignment_expression "lVar19 = 8" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".zdebug_";" (assignment_expression "pbVar24 = (byte *)".zdebug_"" identifier = (cast_expression "(byte *)".zdebug_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".zdebug_"" " string_content "))) ;) (do_statement "do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              } while (bVar27);" do (compound_statement "{\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                bVar28 = *pbVar22 < *pbVar24;\n                bVar27 = *pbVar22 == *pbVar24;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n              }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar22 < *pbVar24;" (assignment_expression "bVar28 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar22 == *pbVar24;" (assignment_expression "bVar27 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (if_statement "if ((!bVar28 && !bVar27) == bVar28) goto LAB_0012b3f7;" if (parenthesized_expression "((!bVar28 && !bVar27) == bVar28)" ( (binary_expression "(!bVar28 && !bVar27) == bVar28" (parenthesized_expression "(!bVar28 && !bVar27)" ( (binary_expression "!bVar28 && !bVar27" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3f7;" goto statement_identifier ;)) (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;) (expression_statement "bVar30 = do_debug_info == 0 && do_debugging == 0;" (assignment_expression "bVar30 = do_debug_info == 0 && do_debugging == 0" identifier = (binary_expression "do_debug_info == 0 && do_debugging == 0" (binary_expression "do_debug_info == 0" identifier == number_literal) && (binary_expression "do_debugging == 0" identifier == number_literal))) ;) (if_statement "if (bVar30) {\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }" if (parenthesized_expression "(bVar30)" ( identifier )) (compound_statement "{\nLAB_0012b2b0:\n                bVar27 = false;\n                bVar30 = do_debug_frames == 0;\n                if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }\n                bVar27 = false;\n                bVar30 = do_gdb_index == 0;\n                if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }\n              }" { (labeled_statement "LAB_0012b2b0:\n                bVar27 = false;" statement_identifier : (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;)) (expression_statement "bVar30 = do_debug_frames == 0;" (assignment_expression "bVar30 = do_debug_frames == 0" identifier = (binary_expression "do_debug_frames == 0" identifier == number_literal)) ;) (if_statement "if (!bVar30) {\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }" if (parenthesized_expression "(!bVar30)" ( (unary_expression "!bVar30" ! identifier) )) (compound_statement "{\n                  lVar19 = 10;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".eh_frame";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                }" { (expression_statement "lVar19 = 10;" (assignment_expression "lVar19 = 10" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".eh_frame";" (assignment_expression "pbVar24 = (byte *)".eh_frame"" identifier = (cast_expression "(byte *)".eh_frame"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".eh_frame"" " string_content "))) ;) (do_statement "do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);" do (compound_statement "{\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar27 && !bVar30) == bVar27)" ( (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;) (expression_statement "bVar30 = do_gdb_index == 0;" (assignment_expression "bVar30 = do_gdb_index == 0" identifier = (binary_expression "do_gdb_index == 0" identifier == number_literal)) ;) (if_statement "if (bVar30) {\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }\n                else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }" if (parenthesized_expression "(bVar30)" ( identifier )) (compound_statement "{\nLAB_0012b31e:\n                  bVar27 = false;\n                  bVar30 = do_debugging == 0;\n                  if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);\n                  if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;\n                }" { (labeled_statement "LAB_0012b31e:\n                  bVar27 = false;" statement_identifier : (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;)) (expression_statement "bVar30 = do_debugging == 0;" (assignment_expression "bVar30 = do_debugging == 0" identifier = (binary_expression "do_debugging == 0" identifier == number_literal)) ;) (if_statement "if (bVar30) {\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }" if (parenthesized_expression "(bVar30)" ( identifier )) (compound_statement "{\n                    bVar27 = false;\n                    bVar30 = do_trace_info == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;\n                    if (bVar30) goto LAB_0012c5d2;\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar27 = false;\n                    bVar30 = do_trace_abbrevs == 0;\n                    if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }\n                    bVar28 = false;\n                    bVar27 = do_trace_aranges == 0;\n                    if (bVar27) goto LAB_0012ad90;\n                    lVar19 = 8;\n                    pbVar11 = pbVar11 + 7;\n                    pcVar18 = (char *)(byte *)0x1826ce;\n                  }" { (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;) (expression_statement "bVar30 = do_trace_info == 0;" (assignment_expression "bVar30 = do_trace_info == 0" identifier = (binary_expression "do_trace_info == 0" identifier == number_literal)) ;) (if_statement "if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }" if (parenthesized_expression "(!bVar30)" ( (unary_expression "!bVar30" ! identifier) )) (compound_statement "{\n                      lVar19 = 7;\n                      pbVar22 = pbVar11;\n                      pbVar24 = (byte *)".trace_";\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;\n                      if (bVar27) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }" { (expression_statement "lVar19 = 7;" (assignment_expression "lVar19 = 7" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".trace_";" (assignment_expression "pbVar24 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);" do (compound_statement "{\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) == bVar27) {\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }" if (parenthesized_expression "((!bVar27 && !bVar30) == bVar27)" ( (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier) )) (compound_statement "{\n                        bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;\n                        bVar30 = pbVar11 + 7 == (byte *)0x0;\n                        lVar19 = 5;\n                        pbVar22 = pbVar11 + 7;\n                        pbVar24 = (byte *)0x1663a6;\n                        do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);\n                        if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }" { (expression_statement "bVar27 = (byte *)0xfffffffffffffff8 < pbVar11;" (assignment_expression "bVar27 = (byte *)0xfffffffffffffff8 < pbVar11" identifier = (binary_expression "(byte *)0xfffffffffffffff8 < pbVar11" (cast_expression "(byte *)0xfffffffffffffff8" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier)) ;) (expression_statement "bVar30 = pbVar11 + 7 == (byte *)0x0;" (assignment_expression "bVar30 = pbVar11 + 7 == (byte *)0x0" identifier = (binary_expression "pbVar11 + 7 == (byte *)0x0" (binary_expression "pbVar11 + 7" identifier + number_literal) == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "lVar19 = 5;" (assignment_expression "lVar19 = 5" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11 + 7;" (assignment_expression "pbVar22 = pbVar11 + 7" identifier = (binary_expression "pbVar11 + 7" identifier + number_literal)) ;) (expression_statement "pbVar24 = (byte *)0x1663a6;" (assignment_expression "pbVar24 = (byte *)0x1663a6" identifier = (cast_expression "(byte *)0x1663a6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        } while (bVar30);" do (compound_statement "{\n                          if (lVar19 == 0) break;\n                          lVar19 = lVar19 + -1;\n                          bVar27 = *pbVar22 < *pbVar24;\n                          bVar30 = *pbVar22 == *pbVar24;\n                          pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                          pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                        }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b36f;" if (parenthesized_expression "((!bVar27 && !bVar30) != bVar27)" ( (binary_expression "(!bVar27 && !bVar30) != bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b36f;" goto statement_identifier ;)) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;) })) (labeled_statement "LAB_0012c5d2:\n                      bVar27 = do_debug_links == 0;" statement_identifier : (expression_statement "bVar27 = do_debug_links == 0;" (assignment_expression "bVar27 = do_debug_links == 0" identifier = (binary_expression "do_debug_links == 0" identifier == number_literal)) ;)) (if_statement "if (bVar27) goto LAB_0012ad90;" if (parenthesized_expression "(bVar27)" ( identifier )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) (goto_statement "goto LAB_0012c536;" goto statement_identifier ;) })) (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;) (expression_statement "bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0;" (assignment_expression "bVar30 = do_trace_abbrevs == 0 && do_trace_aranges == 0" identifier = (binary_expression "do_trace_abbrevs == 0 && do_trace_aranges == 0" (binary_expression "do_trace_abbrevs == 0" identifier == number_literal) && (binary_expression "do_trace_aranges == 0" identifier == number_literal))) ;) (if_statement "if (bVar30) goto LAB_0012c5d2;" if (parenthesized_expression "(bVar30)" ( identifier )) (goto_statement "goto LAB_0012c5d2;" goto statement_identifier ;)) (expression_statement "lVar19 = 7;" (assignment_expression "lVar19 = 7" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".trace_";" (assignment_expression "pbVar24 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);" do (compound_statement "{\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012c5d2;" if (parenthesized_expression "((!bVar27 && !bVar30) != bVar27)" ( (binary_expression "(!bVar27 && !bVar30) != bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012c5d2;" goto statement_identifier ;)) (labeled_statement "LAB_0012b36f:\n                    bVar27 = false;" statement_identifier : (expression_statement "bVar27 = false;" (assignment_expression "bVar27 = false" identifier = false) ;)) (expression_statement "bVar30 = do_trace_abbrevs == 0;" (assignment_expression "bVar30 = do_trace_abbrevs == 0" identifier = (binary_expression "do_trace_abbrevs == 0" identifier == number_literal)) ;) (if_statement "if (!bVar30) {\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }" if (parenthesized_expression "(!bVar30)" ( (unary_expression "!bVar30" ! identifier) )) (compound_statement "{\n                      lVar19 = 7;\n                      pbVar22 = pbVar11 + 7;\n                      pbVar24 = (byte *)0x1826c0;\n                      do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);\n                      if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;\n                    }" { (expression_statement "lVar19 = 7;" (assignment_expression "lVar19 = 7" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11 + 7;" (assignment_expression "pbVar22 = pbVar11 + 7" identifier = (binary_expression "pbVar11 + 7" identifier + number_literal)) ;) (expression_statement "pbVar24 = (byte *)0x1826c0;" (assignment_expression "pbVar24 = (byte *)0x1826c0" identifier = (cast_expression "(byte *)0x1826c0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      } while (bVar30);" do (compound_statement "{\n                        if (lVar19 == 0) break;\n                        lVar19 = lVar19 + -1;\n                        bVar27 = *pbVar22 < *pbVar24;\n                        bVar30 = *pbVar22 == *pbVar24;\n                        pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                        pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                      }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) == bVar27) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar27 && !bVar30) == bVar27)" ( (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar27 = do_trace_aranges == 0;" (assignment_expression "bVar27 = do_trace_aranges == 0" identifier = (binary_expression "do_trace_aranges == 0" identifier == number_literal)) ;) (if_statement "if (bVar27) goto LAB_0012ad90;" if (parenthesized_expression "(bVar27)" ( identifier )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) (expression_statement "lVar19 = 8;" (assignment_expression "lVar19 = 8" identifier = number_literal) ;) (expression_statement "pbVar11 = pbVar11 + 7;" (assignment_expression "pbVar11 = pbVar11 + 7" identifier = (binary_expression "pbVar11 + 7" identifier + number_literal)) ;) (expression_statement "pcVar18 = (char *)(byte *)0x1826ce;" (assignment_expression "pcVar18 = (char *)(byte *)0x1826ce" identifier = (cast_expression "(char *)(byte *)0x1826ce" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(byte *)0x1826ce" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }" else (compound_statement "{\n                    lVar19 = 7;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".trace_";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);\n                    bVar27 = (!bVar27 && !bVar30) == bVar27;\n                    if (bVar27) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar30 = false;\n                    lVar19 = 0xe;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    bVar28 = false;\n                    bVar27 = (!bVar30 && !bVar27) == bVar30;\n                    if (bVar27) goto LAB_0012b3c0;\n                    lVar19 = 0x11;\n                    pcVar18 = ".gnu_debugaltlink";\n                  }" { (expression_statement "lVar19 = 7;" (assignment_expression "lVar19 = 7" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".trace_";" (assignment_expression "pbVar24 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar30);" do (compound_statement "{\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar27 = *pbVar22 < *pbVar24;\n                      bVar30 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (expression_statement "bVar27 = (!bVar27 && !bVar30) == bVar27;" (assignment_expression "bVar27 = (!bVar27 && !bVar30) == bVar27" identifier = (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar27) goto LAB_0012b3c0;" if (parenthesized_expression "(bVar27)" ( identifier )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) (labeled_statement "LAB_0012c536:\n                    bVar30 = false;" statement_identifier : (expression_statement "bVar30 = false;" (assignment_expression "bVar30 = false" identifier = false) ;)) (expression_statement "lVar19 = 0xe;" (assignment_expression "lVar19 = 0xe" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".gnu_debuglink";" (assignment_expression "pbVar24 = (byte *)".gnu_debuglink"" identifier = (cast_expression "(byte *)".gnu_debuglink"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu_debuglink"" " string_content "))) ;) (do_statement "do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);" do (compound_statement "{\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar30 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar30 = *pbVar22 < *pbVar24;" (assignment_expression "bVar30 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar22 == *pbVar24;" (assignment_expression "bVar27 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar27 = (!bVar30 && !bVar27) == bVar30;" (assignment_expression "bVar27 = (!bVar30 && !bVar27) == bVar30" identifier = (binary_expression "(!bVar30 && !bVar27) == bVar30" (parenthesized_expression "(!bVar30 && !bVar27)" ( (binary_expression "!bVar30 && !bVar27" (unary_expression "!bVar30" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar27) goto LAB_0012b3c0;" if (parenthesized_expression "(bVar27)" ( identifier )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) (expression_statement "lVar19 = 0x11;" (assignment_expression "lVar19 = 0x11" identifier = number_literal) ;) (expression_statement "pcVar18 = ".gnu_debugaltlink";" (assignment_expression "pcVar18 = ".gnu_debugaltlink"" identifier = (string_literal "".gnu_debugaltlink"" " string_content ")) ;) }))) (do_statement "do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  } while (bVar27);" do (compound_statement "{\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar28 = *pbVar11 < (byte)*pcVar18;\n                    bVar27 = *pbVar11 == *pcVar18;\n                    pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                    pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);\n                  }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar11 < (byte)*pcVar18;" (assignment_expression "bVar28 = *pbVar11 < (byte)*pcVar18" identifier = (binary_expression "*pbVar11 < (byte)*pcVar18" (pointer_expression "*pbVar11" * identifier) < (binary_expression "(byte)*pcVar18" (parenthesized_expression "(byte)" ( identifier )) * identifier))) ;) (expression_statement "bVar27 = *pbVar11 == *pcVar18;" (assignment_expression "bVar27 = *pbVar11 == *pcVar18" identifier = (binary_expression "*pbVar11 == *pcVar18" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pcVar18" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1);" (assignment_expression "pcVar18 = (char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1)" identifier = (cast_expression "(char *)((byte *)pcVar18 + (ulong)bVar32 * -2 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((byte *)pcVar18 + (ulong)bVar32 * -2 + 1)" ( (binary_expression "(byte *)pcVar18 + (ulong)bVar32 * -2 + 1" (binary_expression "(byte *)pcVar18 + (ulong)bVar32 * -2" (cast_expression "(byte *)pcVar18" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (if_statement "if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012ad90;" if (parenthesized_expression "((!bVar28 && !bVar27) != bVar28)" ( (binary_expression "(!bVar28 && !bVar27) != bVar28" (parenthesized_expression "(!bVar28 && !bVar27)" ( (binary_expression "!bVar28 && !bVar27" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) }) (else_clause "else {\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }" else (compound_statement "{\n                  lVar19 = 0xb;\n                  pbVar22 = pbVar11;\n                  pbVar24 = (byte *)".gdb_index";\n                  do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);\n                  bVar28 = false;\n                  bVar27 = (!bVar27 && !bVar30) == bVar27;\n                  if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }\n                }" { (expression_statement "lVar19 = 0xb;" (assignment_expression "lVar19 = 0xb" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".gdb_index";" (assignment_expression "pbVar24 = (byte *)".gdb_index"" identifier = (cast_expression "(byte *)".gdb_index"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gdb_index"" " string_content "))) ;) (do_statement "do {\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  } while (bVar30);" do (compound_statement "{\n                    if (lVar19 == 0) break;\n                    lVar19 = lVar19 + -1;\n                    bVar27 = *pbVar22 < *pbVar24;\n                    bVar30 = *pbVar22 == *pbVar24;\n                    pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                    pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                  }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar27 = (!bVar27 && !bVar30) == bVar27;" (assignment_expression "bVar27 = (!bVar27 && !bVar30) == bVar27" identifier = (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar27) {\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }" if (parenthesized_expression "(!bVar27)" ( (unary_expression "!bVar27" ! identifier) )) (compound_statement "{\n                    lVar19 = 0xd;\n                    pbVar22 = pbVar11;\n                    pbVar24 = (byte *)".debug_names";\n                    do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);\n                    if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;\n                  }" { (expression_statement "lVar19 = 0xd;" (assignment_expression "lVar19 = 0xd" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".debug_names";" (assignment_expression "pbVar24 = (byte *)".debug_names"" identifier = (cast_expression "(byte *)".debug_names"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_names"" " string_content "))) ;) (do_statement "do {\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    } while (bVar27);" do (compound_statement "{\n                      if (lVar19 == 0) break;\n                      lVar19 = lVar19 + -1;\n                      bVar28 = *pbVar22 < *pbVar24;\n                      bVar27 = *pbVar22 == *pbVar24;\n                      pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                      pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                    }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar22 < *pbVar24;" (assignment_expression "bVar28 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar27 = *pbVar22 == *pbVar24;" (assignment_expression "bVar27 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar27)" ( identifier )) ;) (if_statement "if ((!bVar28 && !bVar27) != bVar28) goto LAB_0012b31e;" if (parenthesized_expression "((!bVar28 && !bVar27) != bVar28)" ( (binary_expression "(!bVar28 && !bVar27) != bVar28" (parenthesized_expression "(!bVar28 && !bVar27)" ( (binary_expression "!bVar28 && !bVar27" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar27" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b31e;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }" else (compound_statement "{\n                lVar19 = 0x11;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;\n              }" { (expression_statement "lVar19 = 0x11;" (assignment_expression "lVar19 = 0x11" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".gnu.linkonce.wi.";" (assignment_expression "pbVar24 = (byte *)".gnu.linkonce.wi."" identifier = (cast_expression "(byte *)".gnu.linkonce.wi."" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu.linkonce.wi."" " string_content "))) ;) (do_statement "do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);" do (compound_statement "{\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (if_statement "if ((!bVar27 && !bVar30) != bVar27) goto LAB_0012b2b0;" if (parenthesized_expression "((!bVar27 && !bVar30) != bVar27)" ( (binary_expression "(!bVar27 && !bVar30) != bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b2b0;" goto statement_identifier ;)) }))) }))) (labeled_statement "LAB_0012b3c0:\n            request_dump_bynumber(filedata,uVar25,'\x04');" statement_identifier : (expression_statement "request_dump_bynumber(filedata,uVar25,'\x04');" (call_expression "request_dump_bynumber(filedata,uVar25,'\x04')" identifier (argument_list "(filedata,uVar25,'\x04')" ( identifier , identifier , (char_literal "'\x04'" ' escape_sequence ') ))) ;)) }))) }) (else_clause "else if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar20 == 0x12) {\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }\n        else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar20 == 0x12)" ( (binary_expression "uVar20 == 0x12" identifier == number_literal) )) (compound_statement "{\n          peVar13 = (elf_section_list *)xmalloc(0x10);\n          peVar13->hdr = section;\n          peVar13->next = symtab_shndx_list;\n          symtab_shndx_list = peVar13;\n        }" { (expression_statement "peVar13 = (elf_section_list *)xmalloc(0x10);" (assignment_expression "peVar13 = (elf_section_list *)xmalloc(0x10)" identifier = (cast_expression "(elf_section_list *)xmalloc(0x10)" ( (type_descriptor "elf_section_list *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x10)" identifier (argument_list "(0x10)" ( number_literal ))))) ;) (expression_statement "peVar13->hdr = section;" (assignment_expression "peVar13->hdr = section" (field_expression "peVar13->hdr" identifier -> field_identifier) = identifier) ;) (expression_statement "peVar13->next = symtab_shndx_list;" (assignment_expression "peVar13->next = symtab_shndx_list" (field_expression "peVar13->next" identifier -> field_identifier) = identifier) ;) (expression_statement "symtab_shndx_list = peVar13;" (assignment_expression "symtab_shndx_list = peVar13" identifier = identifier) ;) }) (else_clause "else if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar20 == 2) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }\n        else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar20 == 2)" ( (binary_expression "uVar20 == 2" identifier == number_literal) )) (compound_statement "{\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" { (expression_statement "bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10;" (assignment_expression "bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10" identifier = (binary_expression "(ulong)(-(uint)(is_32bit_elf == 0) & 8) + 0x10" (call_expression "(ulong)(-(uint)(is_32bit_elf == 0) & 8)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(is_32bit_elf == 0) & 8)" ( (binary_expression "-(uint)(is_32bit_elf == 0) & 8" (unary_expression "-(uint)(is_32bit_elf == 0)" - (call_expression "(uint)(is_32bit_elf == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (section->sh_entsize != bVar23) goto LAB_0012b6ee;" if (parenthesized_expression "(section->sh_entsize != bVar23)" ( (binary_expression "section->sh_entsize != bVar23" (field_expression "section->sh_entsize" identifier -> field_identifier) != identifier) )) (goto_statement "goto LAB_0012b6ee;" goto statement_identifier ;)) }) (else_clause "else if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar20 == 0x11) {\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }\n        else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar20 == 0x11)" ( (binary_expression "uVar20 == 0x11" identifier == number_literal) )) (compound_statement "{\n          if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }\n        }" { (if_statement "if (section->sh_entsize != 4) {\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }" if (parenthesized_expression "(section->sh_entsize != 4)" ( (binary_expression "section->sh_entsize != 4" (field_expression "section->sh_entsize" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,4);\n            section->sh_entsize = 4;\n          }" { (expression_statement "sprintf(buf,"%016lx");" (call_expression "sprintf(buf,"%016lx")" identifier (argument_list "(buf,"%016lx")" ( identifier , (string_literal ""%016lx"" " string_content ") ))) ;) (expression_statement "pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar18,(ulong)uVar25,buf);" (call_expression "error(pcVar18,(ulong)uVar25,buf)" identifier (argument_list "(pcVar18,(ulong)uVar25,buf)" ( identifier , (cast_expression "(ulong)uVar25" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier ))) ;) (expression_statement "pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5)" identifier (argument_list "(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar18,4);" (call_expression "error(pcVar18,4)" identifier (argument_list "(pcVar18,4)" ( identifier , number_literal ))) ;) (expression_statement "section->sh_entsize = 4;" (assignment_expression "section->sh_entsize = 4" (field_expression "section->sh_entsize" identifier -> field_identifier) = number_literal) ;) })) }) (else_clause "else if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar20 == 9) {\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }\n        else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar20 == 9)" ( (binary_expression "uVar20 == 9" identifier == number_literal) )) (compound_statement "{\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;\n          if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }\n        }" { (expression_statement "bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8;" (assignment_expression "bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8" identifier = (binary_expression "(ulong)(-(uint)(is_32bit_elf == 0) & 8) + 8" (call_expression "(ulong)(-(uint)(is_32bit_elf == 0) & 8)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(is_32bit_elf == 0) & 8)" ( (binary_expression "-(uint)(is_32bit_elf == 0) & 8" (unary_expression "-(uint)(is_32bit_elf == 0)" - (call_expression "(uint)(is_32bit_elf == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (section->sh_entsize != bVar23) {\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }" if (parenthesized_expression "(section->sh_entsize != bVar23)" ( (binary_expression "section->sh_entsize != bVar23" (field_expression "section->sh_entsize" identifier -> field_identifier) != identifier) )) (compound_statement "{\nLAB_0012b6ee:\n            sprintf(buf,"%016lx");\n            pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(pcVar18,(ulong)uVar25,buf);\n            pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);\n            error(pcVar18,bVar23);\n            section->sh_entsize = bVar23;\n          }" { (labeled_statement "LAB_0012b6ee:\n            sprintf(buf,"%016lx");" statement_identifier : (expression_statement "sprintf(buf,"%016lx");" (call_expression "sprintf(buf,"%016lx")" identifier (argument_list "(buf,"%016lx")" ( identifier , (string_literal ""%016lx"" " string_content ") ))) ;)) (expression_statement "pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar18,(ulong)uVar25,buf);" (call_expression "error(pcVar18,(ulong)uVar25,buf)" identifier (argument_list "(pcVar18,(ulong)uVar25,buf)" ( identifier , (cast_expression "(ulong)uVar25" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier ))) ;) (expression_statement "pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5)" identifier (argument_list "(0,\n                                        "(Using the expected size of %u for the rest of this dump)\n"\n                                        ,5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "error(pcVar18,bVar23);" (call_expression "error(pcVar18,bVar23)" identifier (argument_list "(pcVar18,bVar23)" ( identifier , identifier ))) ;) (expression_statement "section->sh_entsize = bVar23;" (assignment_expression "section->sh_entsize = bVar23" (field_expression "section->sh_entsize" identifier -> field_identifier) = identifier) ;) })) }) (else_clause "else {\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" else (compound_statement "{\n          if (uVar20 != 4) goto LAB_0012b1ff;\n          bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;\n          if (section->sh_entsize != bVar23) goto LAB_0012b6ee;\n        }" { (if_statement "if (uVar20 != 4) goto LAB_0012b1ff;" if (parenthesized_expression "(uVar20 != 4)" ( (binary_expression "uVar20 != 4" identifier != number_literal) )) (goto_statement "goto LAB_0012b1ff;" goto statement_identifier ;)) (expression_statement "bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc;" (assignment_expression "bVar23 = (ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc" identifier = (binary_expression "(ulong)(-(uint)(is_32bit_elf == 0) & 0xc) + 0xc" (call_expression "(ulong)(-(uint)(is_32bit_elf == 0) & 0xc)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(is_32bit_elf == 0) & 0xc)" ( (binary_expression "-(uint)(is_32bit_elf == 0) & 0xc" (unary_expression "-(uint)(is_32bit_elf == 0)" - (call_expression "(uint)(is_32bit_elf == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (section->sh_entsize != bVar23) goto LAB_0012b6ee;" if (parenthesized_expression "(section->sh_entsize != bVar23)" ( (binary_expression "section->sh_entsize != bVar23" (field_expression "section->sh_entsize" identifier -> field_identifier) != identifier) )) (goto_statement "goto LAB_0012b6ee;" goto statement_identifier ;)) }))))))))))) }))) (labeled_statement "LAB_0012ad90:\n      uVar20 = (filedata->file_header).e_shnum;" statement_identifier : (expression_statement "uVar20 = (filedata->file_header).e_shnum;" (assignment_expression "uVar20 = (filedata->file_header).e_shnum" identifier = (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;)) (expression_statement "uVar25 = uVar25 + 1;" (assignment_expression "uVar25 = uVar25 + 1" identifier = (binary_expression "uVar25 + 1" identifier + number_literal)) ;) (expression_statement "section = section + 1;" (assignment_expression "section = section + 1" identifier = (binary_expression "section + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar25 < uVar20)" ( (binary_expression "uVar25 < uVar20" identifier < identifier) )) ;) (if_statement "if (do_sections == 0) {\n      return 1;\n    }" if (parenthesized_expression "(do_sections == 0)" ( (binary_expression "do_sections == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (if_statement "if (uVar20 < 2) goto LAB_0012c296;" if (parenthesized_expression "(uVar20 < 2)" ( (binary_expression "uVar20 < 2" identifier < number_literal) )) (goto_statement "goto LAB_0012c296;" goto statement_identifier ;)) (expression_statement "pcVar18 = "\nSection Headers:\n";" (assignment_expression "pcVar18 = "\nSection Headers:\n"" identifier = (string_literal ""\nSection Headers:\n"" " escape_sequence string_content escape_sequence ")) ;) })))) (expression_statement "pcVar18 = (char *)dcgettext(0,pcVar18,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,pcVar18,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar18,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar18,5)" identifier (argument_list "(0,pcVar18,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (if_statement "if (is_32bit_elf == 0) {\n    if (do_wide == 0) {\n      if (do_section_details == 0) {\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (do_section_details != 0) {\n      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar18);\n      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n    if (do_wide == 0) {\n      if (do_section_details == 0) {\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }" { (if_statement "if (do_wide == 0) {\n      if (do_section_details == 0) {\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" if (parenthesized_expression "(do_wide == 0)" ( (binary_expression "do_wide == 0" identifier == number_literal) )) (compound_statement "{\n      if (do_section_details == 0) {\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }\n    }" { (if_statement "if (do_section_details == 0) {\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }" { (expression_statement "pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" identifier (argument_list "(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" ( number_literal , (string_literal ""  [Nr] Name              Type             Address           Offset\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (expression_statement "pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n";" (assignment_expression "pcVar18 = "       Size              EntSize          Flags  Link  Info  Align\n"" identifier = (string_literal ""       Size              EntSize          Flags  Link  Info  Align\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }" else (compound_statement "{\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar18);\n        pcVar18 = "       Size              EntSize          Info              Align\n";\n      }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (expression_statement "pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" identifier (argument_list "(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" ( number_literal , (string_literal ""       Type              Address          Offset            Link\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (expression_statement "pcVar18 = "       Size              EntSize          Info              Align\n";" (assignment_expression "pcVar18 = "       Size              EntSize          Info              Align\n"" identifier = (string_literal ""       Size              EntSize          Info              Align\n"" " string_content escape_sequence ")) ;) }))) }) (else_clause "else {\n      pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" else (compound_statement "{\n      pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" { (expression_statement "pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";" (assignment_expression "pcVar18 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"" identifier = (string_literal ""  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"" " string_content escape_sequence ")) ;) (if_statement "if (do_section_details != 0) {\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }" if (parenthesized_expression "(do_section_details != 0)" ( (binary_expression "do_section_details != 0" identifier != number_literal) )) (compound_statement "{\n        pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar18);\n        pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (expression_statement "pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";" (assignment_expression "pcVar18 = "       Type            Address          Off    Size   ES   Lk Inf Al\n"" identifier = (string_literal ""       Type            Address          Off    Size   ES   Lk Inf Al\n"" " string_content escape_sequence ")) ;) })) }))) }) (else_clause "else {\n    pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (do_section_details != 0) {\n      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar18);\n      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" else (compound_statement "{\n    pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (do_section_details != 0) {\n      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar18);\n      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" { (expression_statement "pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";" (assignment_expression "pcVar18 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"" identifier = (string_literal ""  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"" " string_content escape_sequence ")) ;) (if_statement "if (do_section_details != 0) {\n      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar18);\n      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }" if (parenthesized_expression "(do_section_details != 0)" ( (binary_expression "do_section_details != 0" identifier != number_literal) )) (compound_statement "{\n      pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar18);\n      pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (expression_statement "pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";" (assignment_expression "pcVar18 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n"" identifier = (string_literal ""       Type            Addr     Off    Size   ES   Lk Inf Al\n"" " string_content escape_sequence ")) ;) })) }))) (expression_statement "pcVar18 = (char *)dcgettext(0,pcVar18,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,pcVar18,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar18,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar18,5)" identifier (argument_list "(0,pcVar18,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (if_statement "if (do_section_details == 0) {\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) {\nLAB_0012ae50:\n      uVar21 = 0;\nLAB_0012b043:\n      do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar18 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar18);\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (do_section_details != 0) {\n      return 1;\n    }\n  }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) {\nLAB_0012ae50:\n      uVar21 = 0;\nLAB_0012b043:\n      do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);\n      goto LAB_0012bca8;\n    }\n  }" { (expression_statement "uVar25 = (filedata->file_header).e_shnum;" (assignment_expression "uVar25 = (filedata->file_header).e_shnum" identifier = (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "pFVar15 = (Filedata *)filedata->section_headers;" (assignment_expression "pFVar15 = (Filedata *)filedata->section_headers" identifier = (cast_expression "(Filedata *)filedata->section_headers" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->section_headers" identifier -> field_identifier))) ;) (if_statement "if (uVar25 != 0) {\nLAB_0012ae50:\n      uVar21 = 0;\nLAB_0012b043:\n      do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);\n      goto LAB_0012bca8;\n    }" if (parenthesized_expression "(uVar25 != 0)" ( (binary_expression "uVar25 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_0012ae50:\n      uVar21 = 0;\nLAB_0012b043:\n      do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);\n      goto LAB_0012bca8;\n    }" { (labeled_statement "LAB_0012ae50:\n      uVar21 = 0;" statement_identifier : (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;)) (labeled_statement "LAB_0012b043:\n      do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);" statement_identifier : (do_statement "do {\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      } while (uVar20 < uVar25);" do (compound_statement "{\n        uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n        if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }\n        if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;\n        pFVar17 = pFVar15->handle;\n        if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar21);\n        if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }\n        pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n        __format = " %-15.15s ";\n        if (do_wide != 0) {\n          __format = " %-15s ";\n        }\n        printf(__format,pcVar18);\n        if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }\n        if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }\n        pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );\n        printf("       %s\n",pcVar18);\n        if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;\n        filedata_1 = (Filedata *)dcgettext(0,"compression header",5);\n        pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);\n        if (pvVar16 == (void *)0x0) goto LAB_0012b030;\n        get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);\n        uVar6 = buf._0_4_;\n        if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }\n        uVar20 = (int)uVar21 + 1;\n        uVar21 = (ulong)uVar20;\n        pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n        print_vma(buf._8_8_,LONG_HEX);\n        printf(", %lu\n",buf._16_8_);\n        uVar25 = (filedata->file_header).e_shnum;\n      }" { (expression_statement "uVar20 = *(uint *)((long)&pFVar15->file_name + 4);" (assignment_expression "uVar20 = *(uint *)((long)&pFVar15->file_name + 4)" identifier = (pointer_expression "*(uint *)((long)&pFVar15->file_name + 4)" * (cast_expression "(uint *)((long)&pFVar15->file_name + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&pFVar15->file_name + 4)" ( (binary_expression "(long)&pFVar15->file_name + 4" (cast_expression "(long)&pFVar15->file_name" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier))) + number_literal) ))))) ;) (if_statement "if (uVar20 < 0x11) {\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }" if (parenthesized_expression "(uVar20 < 0x11)" ( (binary_expression "uVar20 < 0x11" identifier < number_literal) )) (compound_statement "{\n          if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);\n          if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          pcVar18 = (char *)dcgettext(0,pcVar18,5);\n          warn(pcVar18,uVar21,(ulong)uVar25);\n          goto LAB_0012aec8;\n        }" { (if_statement "if (uVar20 < 0xe) {\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }" if (parenthesized_expression "(uVar20 < 0xe)" ( (binary_expression "uVar20 < 0xe" identifier < number_literal) )) (compound_statement "{\n            if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }" { (if_statement "if (uVar20 < 6) {\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }" if (parenthesized_expression "(uVar20 < 6)" ( (binary_expression "uVar20 < 6" identifier < number_literal) )) (compound_statement "{\n              if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }" { (if_statement "if (uVar20 < 4) {\n                if (uVar20 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" if (parenthesized_expression "(uVar20 < 4)" ( (binary_expression "uVar20 < 4" identifier < number_literal) )) (compound_statement "{\n                if (uVar20 == 2) goto LAB_0012b074;\n              }" { (if_statement "if (uVar20 == 2) goto LAB_0012b074;" if (parenthesized_expression "(uVar20 == 2)" ( (binary_expression "uVar20 == 2" identifier == number_literal) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" else (compound_statement "{\nLAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;\n                if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" { (labeled_statement "LAB_0012bb47:\n                uVar26 = (uint)(pFVar15->file_header).e_entry;" statement_identifier : (expression_statement "uVar26 = (uint)(pFVar15->file_header).e_entry;" (assignment_expression "uVar26 = (uint)(pFVar15->file_header).e_entry" identifier = (field_expression "(uint)(pFVar15->file_header).e_entry" (call_expression "(uint)(pFVar15->file_header)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) ))) . field_identifier)) ;)) (if_statement "if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))) {\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }" if (parenthesized_expression "(((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb))))" ( (binary_expression "((uVar26 == 0) || (uVar25 <= uVar26)) ||\n                   ((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))" (parenthesized_expression "((uVar26 == 0) || (uVar25 <= uVar26))" ( (binary_expression "(uVar26 == 0) || (uVar25 <= uVar26)" (parenthesized_expression "(uVar26 == 0)" ( (binary_expression "uVar26 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar25 <= uVar26)" ( (binary_expression "uVar25 <= uVar26" identifier <= identifier) ))) )) || (parenthesized_expression "((uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)))" ( (parenthesized_expression "(uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb))" ( (comma_expression "uVar25 = filedata->section_headers[uVar26].sh_type, uVar25 != 2 &&\n                    (uVar25 != 0xb)" (assignment_expression "uVar25 = filedata->section_headers[uVar26].sh_type" identifier = (field_expression "filedata->section_headers[uVar26].sh_type" (subscript_expression "filedata->section_headers[uVar26]" (field_expression "filedata->section_headers" identifier -> field_identifier) [ identifier ]) . field_identifier)) , (binary_expression "uVar25 != 2 &&\n                    (uVar25 != 0xb)" (binary_expression "uVar25 != 2" identifier != number_literal) && (parenthesized_expression "(uVar25 != 0xb)" ( (binary_expression "uVar25 != 0xb" identifier != number_literal) )))) )) ))) )) (compound_statement "{\n                  pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }" { (expression_statement "pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n";" (assignment_expression "pcVar18 = "[%2u]: Link field (%u) should index a symtab section.\n"" identifier = (string_literal ""[%2u]: Link field (%u) should index a symtab section.\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b0a7;" goto statement_identifier ;) })) }))) }) (else_clause "else {\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }" else (compound_statement "{\n              if (uVar20 == 9) goto LAB_0012bb47;\n              if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;\n            }" { (if_statement "if (uVar20 == 9) goto LAB_0012bb47;" if (parenthesized_expression "(uVar20 == 9)" ( (binary_expression "uVar20 == 9" identifier == number_literal) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) (if_statement "if ((uVar20 == 0xb) || (uVar20 == 6)) goto LAB_0012b074;" if (parenthesized_expression "((uVar20 == 0xb) || (uVar20 == 6))" ( (binary_expression "(uVar20 == 0xb) || (uVar20 == 6)" (parenthesized_expression "(uVar20 == 0xb)" ( (binary_expression "uVar20 == 0xb" identifier == number_literal) )) || (parenthesized_expression "(uVar20 == 6)" ( (binary_expression "uVar20 == 6" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) }))) (goto_statement "goto joined_r0x0012ae86;" goto statement_identifier ;) })) (expression_statement "uVar26 = (uint)(pFVar15->file_header).e_entry;" (assignment_expression "uVar26 = (uint)(pFVar15->file_header).e_entry" identifier = (field_expression "(uint)(pFVar15->file_header).e_entry" (call_expression "(uint)(pFVar15->file_header)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) ))) . field_identifier)) ;) (if_statement "if (uVar26 != 0) {\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }" if (parenthesized_expression "(uVar26 != 0)" ( (binary_expression "uVar26 != 0" identifier != number_literal) )) (compound_statement "{\n            pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }" { (expression_statement "pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n";" (assignment_expression "pcVar18 = "[%2u]: Unexpected value (%u) in link field.\n"" identifier = (string_literal ""[%2u]: Unexpected value (%u) in link field.\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b0a7;" goto statement_identifier ;) })) (labeled_statement "LAB_0012b0ca:\n          uVar12 = 1L << ((byte)uVar20 & 0x3f);" statement_identifier : (expression_statement "uVar12 = 1L << ((byte)uVar20 & 0x3f);" (assignment_expression "uVar12 = 1L << ((byte)uVar20 & 0x3f)" identifier = (binary_expression "1L << ((byte)uVar20 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar20 & 0x3f)" ( (binary_expression "(byte)uVar20 & 0x3f" (cast_expression "(byte)uVar20" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;)) (if_statement "if ((uVar12 & 0x20804) != 0) goto LAB_0012aec8;" if (parenthesized_expression "((uVar12 & 0x20804) != 0)" ( (binary_expression "(uVar12 & 0x20804) != 0" (parenthesized_expression "(uVar12 & 0x20804)" ( (binary_expression "uVar12 & 0x20804" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (if_statement "if ((uVar12 & 0x5c060) == 0) {\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" if (parenthesized_expression "((uVar12 & 0x5c060) == 0)" ( (binary_expression "(uVar12 & 0x5c060) == 0" (parenthesized_expression "(uVar12 & 0x5c060)" ( (binary_expression "uVar12 & 0x5c060" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }\n            pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }" { (if_statement "if ((uVar12 & 0x210) == 0) {\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }" if (parenthesized_expression "((uVar12 & 0x210) == 0)" ( (binary_expression "(uVar12 & 0x210) == 0" (parenthesized_expression "(uVar12 & 0x210)" ( (binary_expression "uVar12 & 0x210" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n              if (uVar20 == 8) goto LAB_0012aef0;\n              pFVar17 = pFVar15->handle;\n              if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }" { (if_statement "if (uVar20 == 8) goto LAB_0012aef0;" if (parenthesized_expression "(uVar20 == 8)" ( (binary_expression "uVar20 == 8" identifier == number_literal) )) (goto_statement "goto LAB_0012aef0;" goto statement_identifier ;)) (expression_statement "pFVar17 = pFVar15->handle;" (assignment_expression "pFVar17 = pFVar15->handle" identifier = (field_expression "pFVar15->handle" identifier -> field_identifier)) ;) (if_statement "if (((ulong)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;" if (parenthesized_expression "(((ulong)pFVar17 & 0x40) == 0)" ( (binary_expression "((ulong)pFVar17 & 0x40) == 0" (parenthesized_expression "((ulong)pFVar17 & 0x40)" ( (binary_expression "(ulong)pFVar17 & 0x40" (cast_expression "(ulong)pFVar17" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012bf7c;" goto statement_identifier ;)) (goto_statement "goto LAB_0012ae98;" goto statement_identifier ;) })) (expression_statement "uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);" (assignment_expression "uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4)" identifier = (pointer_expression "*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) ))))) ;) (if_statement "if (uVar25 == 0) {\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }\n            else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }" if (parenthesized_expression "(uVar25 == 0)" ( (binary_expression "uVar25 == 0" identifier == number_literal) )) (compound_statement "{\n              if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;\n              pcVar18 = filedata->string_table;\n              if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }\n              lVar19 = 10;\n              pbVar22 = (byte *)".rela.dyn";\n              do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);\n              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n              uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            }" { (if_statement "if ((ushort)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;" if (parenthesized_expression "((ushort)((filedata->file_header).e_type - 2) < 2)" ( (binary_expression "(ushort)((filedata->file_header).e_type - 2) < 2" (call_expression "(ushort)((filedata->file_header).e_type - 2)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "((filedata->file_header).e_type - 2)" ( (binary_expression "(filedata->file_header).e_type - 2" (field_expression "(filedata->file_header).e_type" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) - number_literal) ))) < number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "pcVar18 = filedata->string_table;" (assignment_expression "pcVar18 = filedata->string_table" identifier = (field_expression "filedata->string_table" identifier -> field_identifier)) ;) (if_statement "if (pcVar18 == (char *)0x0) {\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }" if (parenthesized_expression "(pcVar18 == (char *)0x0)" ( (binary_expression "pcVar18 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                uVar29 = 0;\n                uVar31 = 1;\n                pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar19 = 9;\n                pbVar22 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);\n                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;\n                pcVar18 = filedata->string_table;\n                if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }" { (expression_statement "uVar29 = 0;" (assignment_expression "uVar29 = 0" identifier = number_literal) ;) (expression_statement "uVar31 = 1;" (assignment_expression "uVar31 = 1" identifier = number_literal) ;) (expression_statement "pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar11 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) (labeled_statement "LAB_0012c57f:\n                lVar19 = 9;" statement_identifier : (expression_statement "lVar19 = 9;" (assignment_expression "lVar19 = 9" identifier = number_literal) ;)) (expression_statement "pbVar22 = (byte *)".rel.dyn";" (assignment_expression "pbVar22 = (byte *)".rel.dyn"" identifier = (cast_expression "(byte *)".rel.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rel.dyn"" " string_content "))) ;) (do_statement "do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                } while ((bool)uVar31);" do (compound_statement "{\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  uVar29 = *pbVar11 < *pbVar22;\n                  uVar31 = *pbVar11 == *pbVar22;\n                  pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "uVar29 = *pbVar11 < *pbVar22;" (assignment_expression "uVar29 = *pbVar11 < *pbVar22" identifier = (binary_expression "*pbVar11 < *pbVar22" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "uVar31 = *pbVar11 == *pbVar22;" (assignment_expression "uVar31 = *pbVar11 == *pbVar22" identifier = (binary_expression "*pbVar11 == *pbVar22" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "((bool)uVar31)" ( (cast_expression "(bool)uVar31" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (if_statement "if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;" if (parenthesized_expression "((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29)" ( (binary_expression "(!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29" (parenthesized_expression "(!(bool)uVar29 && !(bool)uVar31)" ( (binary_expression "!(bool)uVar29 && !(bool)uVar31" (unary_expression "!(bool)uVar29" ! (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar31" ! (cast_expression "(bool)uVar31" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "pcVar18 = filedata->string_table;" (assignment_expression "pcVar18 = filedata->string_table" identifier = (field_expression "filedata->string_table" identifier -> field_identifier)) ;) (if_statement "if (pcVar18 == (char *)0x0) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" if (parenthesized_expression "(pcVar18 == (char *)0x0)" ( (binary_expression "pcVar18 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);\n                }" { (expression_statement "uVar29 = 0;" (assignment_expression "uVar29 = 0" identifier = number_literal) ;) (expression_statement "uVar31 = 1;" (assignment_expression "uVar31 = 1" identifier = number_literal) ;) (expression_statement "pbVar11 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar11 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else {\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" else (compound_statement "{\n                  uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                  if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" { (expression_statement "uVar12 = (ulong)*(uint *)&pFVar15->file_name;" (assignment_expression "uVar12 = (ulong)*(uint *)&pFVar15->file_name" identifier = (binary_expression "(ulong)*(uint *)&pFVar15->file_name" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)&pFVar15->file_name" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier))))) ;) (if_statement "if (uVar12 < filedata->string_table_length) {\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }\n                  else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" if (parenthesized_expression "(uVar12 < filedata->string_table_length)" ( (binary_expression "uVar12 < filedata->string_table_length" identifier < (field_expression "filedata->string_table_length" identifier -> field_identifier)) )) (compound_statement "{\n                    uVar29 = CARRY8((ulong)pcVar18,uVar12);\n                    pbVar11 = (byte *)(pcVar18 + uVar12);\n                    uVar31 = pbVar11 == (byte *)0x0;\n                  }" { (expression_statement "uVar29 = CARRY8((ulong)pcVar18,uVar12);" (assignment_expression "uVar29 = CARRY8((ulong)pcVar18,uVar12)" identifier = (call_expression "CARRY8((ulong)pcVar18,uVar12)" identifier (argument_list "((ulong)pcVar18,uVar12)" ( (cast_expression "(ulong)pcVar18" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier )))) ;) (expression_statement "pbVar11 = (byte *)(pcVar18 + uVar12);" (assignment_expression "pbVar11 = (byte *)(pcVar18 + uVar12)" identifier = (cast_expression "(byte *)(pcVar18 + uVar12)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar18 + uVar12)" ( (binary_expression "pcVar18 + uVar12" identifier + identifier) )))) ;) (expression_statement "uVar31 = pbVar11 == (byte *)0x0;" (assignment_expression "uVar31 = pbVar11 == (byte *)0x0" identifier = (binary_expression "pbVar11 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" else (compound_statement "{\n                    uVar29 = 0;\n                    uVar31 = 1;\n                    pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" { (expression_statement "uVar29 = 0;" (assignment_expression "uVar29 = 0" identifier = number_literal) ;) (expression_statement "uVar31 = 1;" (assignment_expression "uVar31 = 1" identifier = number_literal) ;) (expression_statement "pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar11 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) }))) }))) }) (else_clause "else {\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }" else (compound_statement "{\n                uVar12 = (ulong)*(uint *)&pFVar15->file_name;\n                if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar27 = CARRY8((ulong)pcVar18,uVar12);\n                pbVar11 = (byte *)(pcVar18 + uVar12);\n                bVar30 = pbVar11 == (byte *)0x0;\n                lVar19 = 9;\n                pbVar22 = pbVar11;\n                pbVar24 = (byte *)".rel.dyn";\n                do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);\n                uVar29 = 0;\n                uVar31 = (!bVar27 && !bVar30) == bVar27;\n                if ((bool)uVar31) goto LAB_0012aec8;\n              }" { (expression_statement "uVar12 = (ulong)*(uint *)&pFVar15->file_name;" (assignment_expression "uVar12 = (ulong)*(uint *)&pFVar15->file_name" identifier = (binary_expression "(ulong)*(uint *)&pFVar15->file_name" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)&pFVar15->file_name" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier))))) ;) (if_statement "if (filedata->string_table_length <= uVar12) {\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }" if (parenthesized_expression "(filedata->string_table_length <= uVar12)" ( (binary_expression "filedata->string_table_length <= uVar12" (field_expression "filedata->string_table_length" identifier -> field_identifier) <= identifier) )) (compound_statement "{\n                  uVar29 = 0;\n                  uVar31 = 1;\n                  pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }" { (expression_statement "uVar29 = 0;" (assignment_expression "uVar29 = 0" identifier = number_literal) ;) (expression_statement "uVar31 = 1;" (assignment_expression "uVar31 = 1" identifier = number_literal) ;) (expression_statement "pbVar11 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar11 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) (goto_statement "goto LAB_0012c57f;" goto statement_identifier ;) })) (expression_statement "bVar27 = CARRY8((ulong)pcVar18,uVar12);" (assignment_expression "bVar27 = CARRY8((ulong)pcVar18,uVar12)" identifier = (call_expression "CARRY8((ulong)pcVar18,uVar12)" identifier (argument_list "((ulong)pcVar18,uVar12)" ( (cast_expression "(ulong)pcVar18" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier )))) ;) (expression_statement "pbVar11 = (byte *)(pcVar18 + uVar12);" (assignment_expression "pbVar11 = (byte *)(pcVar18 + uVar12)" identifier = (cast_expression "(byte *)(pcVar18 + uVar12)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar18 + uVar12)" ( (binary_expression "pcVar18 + uVar12" identifier + identifier) )))) ;) (expression_statement "bVar30 = pbVar11 == (byte *)0x0;" (assignment_expression "bVar30 = pbVar11 == (byte *)0x0" identifier = (binary_expression "pbVar11 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "lVar19 = 9;" (assignment_expression "lVar19 = 9" identifier = number_literal) ;) (expression_statement "pbVar22 = pbVar11;" (assignment_expression "pbVar22 = pbVar11" identifier = identifier) ;) (expression_statement "pbVar24 = (byte *)".rel.dyn";" (assignment_expression "pbVar24 = (byte *)".rel.dyn"" identifier = (cast_expression "(byte *)".rel.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rel.dyn"" " string_content "))) ;) (do_statement "do {\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                } while (bVar30);" do (compound_statement "{\n                  if (lVar19 == 0) break;\n                  lVar19 = lVar19 + -1;\n                  bVar27 = *pbVar22 < *pbVar24;\n                  bVar30 = *pbVar22 == *pbVar24;\n                  pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n                  pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;\n                }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "bVar27 = *pbVar22 < *pbVar24;" (assignment_expression "bVar27 = *pbVar22 < *pbVar24" identifier = (binary_expression "*pbVar22 < *pbVar24" (pointer_expression "*pbVar22" * identifier) < (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "bVar30 = *pbVar22 == *pbVar24;" (assignment_expression "bVar30 = *pbVar22 == *pbVar24" identifier = (binary_expression "*pbVar22 == *pbVar24" (pointer_expression "*pbVar22" * identifier) == (pointer_expression "*pbVar24" * identifier))) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar24 = pbVar24 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar24 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar24 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar30)" ( identifier )) ;) (expression_statement "uVar29 = 0;" (assignment_expression "uVar29 = 0" identifier = number_literal) ;) (expression_statement "uVar31 = (!bVar27 && !bVar30) == bVar27;" (assignment_expression "uVar31 = (!bVar27 && !bVar30) == bVar27" identifier = (binary_expression "(!bVar27 && !bVar30) == bVar27" (parenthesized_expression "(!bVar27 && !bVar30)" ( (binary_expression "!bVar27 && !bVar30" (unary_expression "!bVar27" ! identifier) && (unary_expression "!bVar30" ! identifier)) )) == identifier)) ;) (if_statement "if ((bool)uVar31) goto LAB_0012aec8;" if (parenthesized_expression "((bool)uVar31)" ( (cast_expression "(bool)uVar31" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) }))) (expression_statement "lVar19 = 10;" (assignment_expression "lVar19 = 10" identifier = number_literal) ;) (expression_statement "pbVar22 = (byte *)".rela.dyn";" (assignment_expression "pbVar22 = (byte *)".rela.dyn"" identifier = (cast_expression "(byte *)".rela.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rela.dyn"" " string_content "))) ;) (do_statement "do {\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              } while ((bool)uVar31);" do (compound_statement "{\n                if (lVar19 == 0) break;\n                lVar19 = lVar19 + -1;\n                uVar29 = *pbVar11 < *pbVar22;\n                uVar31 = *pbVar11 == *pbVar22;\n                pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;\n                pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;\n              }" { (if_statement "if (lVar19 == 0) break;" if (parenthesized_expression "(lVar19 == 0)" ( (binary_expression "lVar19 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar19 = lVar19 + -1;" (assignment_expression "lVar19 = lVar19 + -1" identifier = (binary_expression "lVar19 + -1" identifier + number_literal)) ;) (expression_statement "uVar29 = *pbVar11 < *pbVar22;" (assignment_expression "uVar29 = *pbVar11 < *pbVar22" identifier = (binary_expression "*pbVar11 < *pbVar22" (pointer_expression "*pbVar11" * identifier) < (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "uVar31 = *pbVar11 == *pbVar22;" (assignment_expression "uVar31 = *pbVar11 == *pbVar22" identifier = (binary_expression "*pbVar11 == *pbVar22" (pointer_expression "*pbVar11" * identifier) == (pointer_expression "*pbVar22" * identifier))) ;) (expression_statement "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar11 = pbVar11 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar11 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar11 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1;" (assignment_expression "pbVar22 = pbVar22 + (ulong)bVar32 * -2 + 1" identifier = (binary_expression "pbVar22 + (ulong)bVar32 * -2 + 1" (binary_expression "pbVar22 + (ulong)bVar32 * -2" identifier + (binary_expression "(ulong)bVar32 * -2" (cast_expression "(ulong)bVar32" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "((bool)uVar31)" ( (cast_expression "(bool)uVar31" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (if_statement "if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;" if (parenthesized_expression "((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29)" ( (binary_expression "(!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29" (parenthesized_expression "(!(bool)uVar29 && !(bool)uVar31)" ( (binary_expression "!(bool)uVar29 && !(bool)uVar31" (unary_expression "!(bool)uVar29" ! (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar31" ! (cast_expression "(bool)uVar31" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);" (assignment_expression "uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4)" identifier = (pointer_expression "*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) ))))) ;) }) (else_clause "else if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }" else (if_statement "if (uVar25 < (filedata->file_header).e_shnum) {\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }" if (parenthesized_expression "(uVar25 < (filedata->file_header).e_shnum)" ( (binary_expression "uVar25 < (filedata->file_header).e_shnum" identifier < (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) )) (compound_statement "{\n              uVar20 = filedata->section_headers[uVar25].sh_type;\n              bVar7 = 1;\n              if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;\n            }" { (expression_statement "uVar20 = filedata->section_headers[uVar25].sh_type;" (assignment_expression "uVar20 = filedata->section_headers[uVar25].sh_type" identifier = (field_expression "filedata->section_headers[uVar25].sh_type" (subscript_expression "filedata->section_headers[uVar25]" (field_expression "filedata->section_headers" identifier -> field_identifier) [ identifier ]) . field_identifier)) ;) (expression_statement "bVar7 = 1;" (assignment_expression "bVar7 = 1" identifier = number_literal) ;) (if_statement "if (uVar20 < 0xf) {\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }" if (parenthesized_expression "(uVar20 < 0xf)" ( (binary_expression "uVar20 < 0xf" identifier < number_literal) )) (compound_statement "{\n                bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;\n              }" { (expression_statement "bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1;" (assignment_expression "bVar7 = ~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1" identifier = (binary_expression "~(byte)(0x4182L >> ((byte)uVar20 & 0x3f)) & 1" (unary_expression "~(byte)(0x4182L >> ((byte)uVar20 & 0x3f))" ~ (call_expression "(byte)(0x4182L >> ((byte)uVar20 & 0x3f))" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(0x4182L >> ((byte)uVar20 & 0x3f))" ( (binary_expression "0x4182L >> ((byte)uVar20 & 0x3f)" number_literal >> (parenthesized_expression "((byte)uVar20 & 0x3f)" ( (binary_expression "(byte)uVar20 & 0x3f" (cast_expression "(byte)uVar20" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) )))) & number_literal)) ;) })) (if_statement "if ((0x5fffffff < uVar20) || (bVar7 == 0)) goto LAB_0012aec8;" if (parenthesized_expression "((0x5fffffff < uVar20) || (bVar7 == 0))" ( (binary_expression "(0x5fffffff < uVar20) || (bVar7 == 0)" (parenthesized_expression "(0x5fffffff < uVar20)" ( (binary_expression "0x5fffffff < uVar20" number_literal < identifier) )) || (parenthesized_expression "(bVar7 == 0)" ( (binary_expression "bVar7 == 0" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) })))) (expression_statement "pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n";" (assignment_expression "pcVar18 = "[%2u]: Info field (%u) should index a relocatable section.\n"" identifier = (string_literal ""[%2u]: Info field (%u) should index a relocatable section.\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" else (compound_statement "{\nLAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n            if (uVar25 == 0) goto LAB_0012aec8;\n            pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" { (labeled_statement "LAB_0012bf87:\n            uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);" statement_identifier : (expression_statement "uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);" (assignment_expression "uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4)" identifier = (pointer_expression "*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) ))))) ;)) (if_statement "if (uVar25 == 0) goto LAB_0012aec8;" if (parenthesized_expression "(uVar25 == 0)" ( (binary_expression "uVar25 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n";" (assignment_expression "pcVar18 = "[%2u]: Unexpected value (%u) in info field.\n"" identifier = (string_literal ""[%2u]: Unexpected value (%u) in info field.\n"" " string_content escape_sequence ")) ;) }))) (expression_statement "pcVar18 = (char *)dcgettext(0,pcVar18,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,pcVar18,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar18,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar18,5)" identifier (argument_list "(0,pcVar18,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "warn(pcVar18,uVar21,(ulong)uVar25);" (call_expression "warn(pcVar18,uVar21,(ulong)uVar25)" identifier (argument_list "(pcVar18,uVar21,(ulong)uVar25)" ( identifier , identifier , (cast_expression "(ulong)uVar25" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;) })) (if_statement "if (uVar20 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }\n        else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(uVar20 == 0x6ffffff7)" ( (binary_expression "uVar20 == 0x6ffffff7" identifier == number_literal) )) (compound_statement "{\nLAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;\n          if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }\n        }" { (labeled_statement "LAB_0012b074:\n          uVar26 = (uint)(pFVar15->file_header).e_entry;" statement_identifier : (expression_statement "uVar26 = (uint)(pFVar15->file_header).e_entry;" (assignment_expression "uVar26 = (uint)(pFVar15->file_header).e_entry" identifier = (field_expression "(uint)(pFVar15->file_header).e_entry" (call_expression "(uint)(pFVar15->file_header)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) ))) . field_identifier)) ;)) (if_statement "if (((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)) {\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }" if (parenthesized_expression "(((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3))" ( (binary_expression "((uVar26 == 0) || (uVar25 <= uVar26)) ||\n             (filedata->section_headers[uVar26].sh_type != 3)" (parenthesized_expression "((uVar26 == 0) || (uVar25 <= uVar26))" ( (binary_expression "(uVar26 == 0) || (uVar25 <= uVar26)" (parenthesized_expression "(uVar26 == 0)" ( (binary_expression "uVar26 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar25 <= uVar26)" ( (binary_expression "uVar25 <= uVar26" identifier <= identifier) ))) )) || (parenthesized_expression "(filedata->section_headers[uVar26].sh_type != 3)" ( (binary_expression "filedata->section_headers[uVar26].sh_type != 3" (field_expression "filedata->section_headers[uVar26].sh_type" (subscript_expression "filedata->section_headers[uVar26]" (field_expression "filedata->section_headers" identifier -> field_identifier) [ identifier ]) . field_identifier) != number_literal) ))) )) (compound_statement "{\n            pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);\n            warn(pcVar18,uVar21,(ulong)uVar26);\n            uVar20 = *(uint *)((long)&pFVar15->file_name + 4);\n          }" { (expression_statement "pcVar18 = "[%2u]: Link field (%u) should index a string section.\n";" (assignment_expression "pcVar18 = "[%2u]: Link field (%u) should index a string section.\n"" identifier = (string_literal ""[%2u]: Link field (%u) should index a string section.\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0012b0a7:\n            pcVar18 = (char *)dcgettext(0,pcVar18,5);" statement_identifier : (expression_statement "pcVar18 = (char *)dcgettext(0,pcVar18,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,pcVar18,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar18,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar18,5)" identifier (argument_list "(0,pcVar18,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "warn(pcVar18,uVar21,(ulong)uVar26);" (call_expression "warn(pcVar18,uVar21,(ulong)uVar26)" identifier (argument_list "(pcVar18,uVar21,(ulong)uVar26)" ( identifier , identifier , (cast_expression "(ulong)uVar26" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "uVar20 = *(uint *)((long)&pFVar15->file_name + 4);" (assignment_expression "uVar20 = *(uint *)((long)&pFVar15->file_name + 4)" identifier = (pointer_expression "*(uint *)((long)&pFVar15->file_name + 4)" * (cast_expression "(uint *)((long)&pFVar15->file_name + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&pFVar15->file_name + 4)" ( (binary_expression "(long)&pFVar15->file_name + 4" (cast_expression "(long)&pFVar15->file_name" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier))) + number_literal) ))))) ;) })) }) (else_clause "else if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }" else (if_statement "if (uVar20 < 0x6ffffff8) {\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(uVar20 < 0x6ffffff8)" ( (binary_expression "uVar20 < 0x6ffffff8" identifier < number_literal) )) (compound_statement "{\n          if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;\n        }" { (if_statement "if ((uVar20 < 0x13) || (uVar20 == 0x6ffffff6)) goto LAB_0012bb47;" if (parenthesized_expression "((uVar20 < 0x13) || (uVar20 == 0x6ffffff6))" ( (binary_expression "(uVar20 < 0x13) || (uVar20 == 0x6ffffff6)" (parenthesized_expression "(uVar20 < 0x13)" ( (binary_expression "uVar20 < 0x13" identifier < number_literal) )) || (parenthesized_expression "(uVar20 == 0x6ffffff6)" ( (binary_expression "uVar20 == 0x6ffffff6" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) }) (else_clause "else if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }" else (if_statement "if (0x6ffffffc < uVar20) {\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(0x6ffffffc < uVar20)" ( (binary_expression "0x6ffffffc < uVar20" number_literal < identifier) )) (compound_statement "{\n          if (uVar20 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar20 == 0x6fffffff) goto LAB_0012bb47;\n        }" { (if_statement "if (uVar20 < 0x6fffffff) goto LAB_0012b074;" if (parenthesized_expression "(uVar20 < 0x6fffffff)" ( (binary_expression "uVar20 < 0x6fffffff" identifier < number_literal) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) (if_statement "if (uVar20 == 0x6fffffff) goto LAB_0012bb47;" if (parenthesized_expression "(uVar20 == 0x6fffffff)" ( (binary_expression "uVar20 == 0x6fffffff" identifier == number_literal) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) })))))) (labeled_statement "joined_r0x0012ae86:\n        if (uVar20 < 0x13) goto LAB_0012b0ca;" statement_identifier : (if_statement "if (uVar20 < 0x13) goto LAB_0012b0ca;" if (parenthesized_expression "(uVar20 < 0x13)" ( (binary_expression "uVar20 < 0x13" identifier < number_literal) )) (goto_statement "goto LAB_0012b0ca;" goto statement_identifier ;))) (expression_statement "pFVar17 = pFVar15->handle;" (assignment_expression "pFVar17 = pFVar15->handle" identifier = (field_expression "pFVar15->handle" identifier -> field_identifier)) ;) (if_statement "if (((ulong)pFVar17 & 0x40) == 0) {\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }" if (parenthesized_expression "(((ulong)pFVar17 & 0x40) == 0)" ( (binary_expression "((ulong)pFVar17 & 0x40) == 0" (parenthesized_expression "((ulong)pFVar17 & 0x40)" ( (binary_expression "(ulong)pFVar17 & 0x40" (cast_expression "(ulong)pFVar17" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n          if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }" { (if_statement "if (uVar20 < 0x60000000) {\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }" if (parenthesized_expression "(uVar20 < 0x60000000)" ( (binary_expression "uVar20 < 0x60000000" identifier < number_literal) )) (compound_statement "{\nLAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }" { (labeled_statement "LAB_0012bf7c:\n            if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;" statement_identifier : (if_statement "if (((ulong)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;" if (parenthesized_expression "(((ulong)pFVar17 & 0x1000000) == 0)" ( (binary_expression "((ulong)pFVar17 & 0x1000000) == 0" (parenthesized_expression "((ulong)pFVar17 & 0x1000000)" ( (binary_expression "(ulong)pFVar17 & 0x1000000" (cast_expression "(ulong)pFVar17" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012bf87;" goto statement_identifier ;))) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;) })) }) (else_clause "else {\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }" else (compound_statement "{\nLAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);\n          if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }\nLAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }\n        }" { (labeled_statement "LAB_0012ae98:\n          uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);" statement_identifier : (expression_statement "uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4);" (assignment_expression "uVar25 = *(uint *)((long)&(pFVar15->file_header).e_entry + 4)" identifier = (pointer_expression "*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) ))))) ;)) (if_statement "if ((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)) {\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }" if (parenthesized_expression "((uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25))" ( (binary_expression "(uVar25 == 0) || ((filedata->file_header).e_shnum <= uVar25)" (parenthesized_expression "(uVar25 == 0)" ( (binary_expression "uVar25 == 0" identifier == number_literal) )) || (parenthesized_expression "((filedata->file_header).e_shnum <= uVar25)" ( (binary_expression "(filedata->file_header).e_shnum <= uVar25" (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) <= identifier) ))) )) (compound_statement "{\n            pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;\n            warn(pcVar18,uVar21);\n          }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)\n            ;" (assignment_expression "pcVar18 = (char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)" identifier = (cast_expression "(char *)dcgettext(0,"[%2u]: Expected link to another section in info field",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"[%2u]: Expected link to another section in info field",5)" identifier (argument_list "(0,"[%2u]: Expected link to another section in info field",5)" ( number_literal , (string_literal ""[%2u]: Expected link to another section in info field"" " string_content ") , number_literal ))))) ;) (expression_statement "warn(pcVar18,uVar21);" (call_expression "warn(pcVar18,uVar21)" identifier (argument_list "(pcVar18,uVar21)" ( identifier , identifier ))) ;) })) (labeled_statement "LAB_0012aec8:\n          if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }" statement_identifier : (if_statement "if (((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)) {\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }" if (parenthesized_expression "(((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8))" ( (binary_expression "((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)) &&\n             (iVar9 != 8)" (parenthesized_expression "((filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff))" ( (binary_expression "(filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)) &&\n              (iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)" (parenthesized_expression "(filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8))" ( (binary_expression "filedata->file_size < *(ulong *)((pFVar15->file_header).e_ident + 8)" (field_expression "filedata->file_size" identifier -> field_identifier) < (pointer_expression "*(ulong *)((pFVar15->file_header).e_ident + 8)" * (cast_expression "(ulong *)((pFVar15->file_header).e_ident + 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((pFVar15->file_header).e_ident + 8)" ( (binary_expression "(pFVar15->file_header).e_ident + 8" (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) ))))) )) && (parenthesized_expression "(iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff)" ( (comma_expression "iVar9 = *(int *)((long)&pFVar15->file_name + 4), iVar9 - 1U < 0x5fffffff" (assignment_expression "iVar9 = *(int *)((long)&pFVar15->file_name + 4)" identifier = (pointer_expression "*(int *)((long)&pFVar15->file_name + 4)" * (cast_expression "(int *)((long)&pFVar15->file_name + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&pFVar15->file_name + 4)" ( (binary_expression "(long)&pFVar15->file_name + 4" (cast_expression "(long)&pFVar15->file_name" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier))) + number_literal) ))))) , (binary_expression "iVar9 - 1U < 0x5fffffff" (binary_expression "iVar9 - 1U" identifier - number_literal) < number_literal)) ))) )) && (parenthesized_expression "(iVar9 != 8)" ( (binary_expression "iVar9 != 8" identifier != number_literal) ))) )) (compound_statement "{\n            pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(pcVar18,uVar21);\n          }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" identifier (argument_list "(0,"Size of section %u is larger than the entire file!\n",5)" ( number_literal , (string_literal ""Size of section %u is larger than the entire file!\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar18,uVar21);" (call_expression "warn(pcVar18,uVar21)" identifier (argument_list "(pcVar18,uVar21)" ( identifier , identifier ))) ;) }))) }))) (labeled_statement "LAB_0012aef0:\n        printf("  [%2u] ",uVar21);" statement_identifier : (expression_statement "printf("  [%2u] ",uVar21);" (call_expression "printf("  [%2u] ",uVar21)" identifier (argument_list "("  [%2u] ",uVar21)" ( (string_literal ""  [%2u] "" " string_content ") , identifier ))) ;)) (if_statement "if (do_section_details == 0) {\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }\n        else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\n          if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }\n          print_symbol(L'\xffffffef',pcVar18);\n        }" { (if_statement "if (filedata->string_table == (char *)0x0) {\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }" if (parenthesized_expression "(filedata->string_table == (char *)0x0)" ( (binary_expression "filedata->string_table == (char *)0x0" (field_expression "filedata->string_table" identifier -> field_identifier) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            pcVar18 = (char *)dcgettext(0,"<no-strings>",5);\n          }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(char *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else {\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }" else (compound_statement "{\n            pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;\n            if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }\n          }" { (expression_statement "pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name;" (assignment_expression "pcVar18 = filedata->string_table + *(uint *)&pFVar15->file_name" identifier = (binary_expression "filedata->string_table + *(uint *)&pFVar15->file_name" (field_expression "filedata->string_table" identifier -> field_identifier) + (pointer_expression "*(uint *)&pFVar15->file_name" * (cast_expression "(uint *)&pFVar15->file_name" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier)))))) ;) (if_statement "if (filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name) {\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }" if (parenthesized_expression "(filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name)" ( (binary_expression "filedata->string_table_length <= (ulong)*(uint *)&pFVar15->file_name" (field_expression "filedata->string_table_length" identifier -> field_identifier) <= (binary_expression "(ulong)*(uint *)&pFVar15->file_name" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)&pFVar15->file_name" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier))))) )) (compound_statement "{\n              pcVar18 = (char *)dcgettext(0,"<corrupt>",5);\n            }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(char *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) })) }))) (expression_statement "print_symbol(L'\xffffffef',pcVar18);" (call_expression "print_symbol(L'\xffffffef',pcVar18)" identifier (argument_list "(L'\xffffffef',pcVar18)" ( (char_literal "L'\xffffffef'" L' escape_sequence character character character character ') , identifier ))) ;) }) (else_clause "else {\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }" else (compound_statement "{\n          pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);\n          printf("%s\n      ",pcVar18);\n        }" { (expression_statement "pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15);" (assignment_expression "pcVar18 = printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15)" identifier = (call_expression "printable_section_name\n                              ((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15)" identifier (argument_list "((Filedata *)&filedata->string_table,\n                               (Elf_Internal_Shdr *)&filedata->string_table_length,pFVar15)" ( (cast_expression "(Filedata *)&filedata->string_table" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&filedata->string_table" & (field_expression "filedata->string_table" identifier -> field_identifier))) , (cast_expression "(Elf_Internal_Shdr *)&filedata->string_table_length" ( (type_descriptor "Elf_Internal_Shdr *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&filedata->string_table_length" & (field_expression "filedata->string_table_length" identifier -> field_identifier))) , identifier )))) ;) (expression_statement "printf("%s\n      ",pcVar18);" (call_expression "printf("%s\n      ",pcVar18)" identifier (argument_list "("%s\n      ",pcVar18)" ( (string_literal ""%s\n      "" " string_content escape_sequence string_content ") , identifier ))) ;) }))) (expression_statement "pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));" (assignment_expression "pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4))" identifier = (call_expression "get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4))" identifier (argument_list "(filedata,*(uint *)((long)&pFVar15->file_name + 4))" ( identifier , (pointer_expression "*(uint *)((long)&pFVar15->file_name + 4)" * (cast_expression "(uint *)((long)&pFVar15->file_name + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&pFVar15->file_name + 4)" ( (binary_expression "(long)&pFVar15->file_name + 4" (cast_expression "(long)&pFVar15->file_name" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier))) + number_literal) )))) )))) ;) (expression_statement "__format = " %-15.15s ";" (assignment_expression "__format = " %-15.15s "" identifier = (string_literal "" %-15.15s "" " string_content ")) ;) (if_statement "if (do_wide != 0) {\n          __format = " %-15s ";\n        }" if (parenthesized_expression "(do_wide != 0)" ( (binary_expression "do_wide != 0" identifier != number_literal) )) (compound_statement "{\n          __format = " %-15s ";\n        }" { (expression_statement "__format = " %-15s ";" (assignment_expression "__format = " %-15s "" identifier = (string_literal "" %-15s "" " string_content ")) ;) })) (expression_statement "printf(__format,pcVar18);" (call_expression "printf(__format,pcVar18)" identifier (argument_list "(__format,pcVar18)" ( identifier , identifier ))) ;) (if_statement "if (is_32bit_elf == 0) {\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }\n        else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }" if (parenthesized_expression "(is_32bit_elf == 0)" ( (binary_expression "is_32bit_elf == 0" identifier == number_literal) )) (compound_statement "{\n          if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }\n        }" { (if_statement "if (do_wide == 0) {\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }" if (parenthesized_expression "(do_wide == 0)" ( (binary_expression "do_wide == 0" identifier == number_literal) )) (compound_statement "{\n            if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }" { (if_statement "if (do_section_details == 0) {\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\n              putc(0x20,stdout);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("\n       ");\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              printf("  ");\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n              printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" { (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "print_vma(pFVar15->file_size,LONG_HEX);" (call_expression "print_vma(pFVar15->file_size,LONG_HEX)" identifier (argument_list "(pFVar15->file_size,LONG_HEX)" ( (field_expression "pFVar15->file_size" identifier -> field_identifier) , identifier ))) ;) (expression_statement "printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident);" (call_expression "printf("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident)" identifier (argument_list "("  %8.8lx",*(undefined8 *)(pFVar15->file_header).e_ident)" ( (string_literal ""  %8.8lx"" " string_content ") , (pointer_expression "*(undefined8 *)(pFVar15->file_header).e_ident" * (cast_expression "(undefined8 *)(pFVar15->file_header).e_ident" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) ))) ;) (expression_statement "printf("\n       ");" (call_expression "printf("\n       ")" identifier (argument_list "("\n       ")" ( (string_literal ""\n       "" " escape_sequence string_content ") ))) ;) (expression_statement "print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);" (call_expression "print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX)" identifier (argument_list "(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX)" ( (pointer_expression "*(bfd_vma *)((pFVar15->file_header).e_ident + 8)" * (cast_expression "(bfd_vma *)((pFVar15->file_header).e_ident + 8)" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((pFVar15->file_header).e_ident + 8)" ( (binary_expression "(pFVar15->file_header).e_ident + 8" (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) )))) , identifier ))) ;) (expression_statement "printf("  ");" (call_expression "printf("  ")" identifier (argument_list "("  ")" ( (string_literal ""  "" " string_content ") ))) ;) (expression_statement "print_vma((pFVar15->file_header).e_shoff,LONG_HEX);" (call_expression "print_vma((pFVar15->file_header).e_shoff,LONG_HEX)" identifier (argument_list "((pFVar15->file_header).e_shoff,LONG_HEX)" ( (field_expression "(pFVar15->file_header).e_shoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) , identifier ))) ;) (expression_statement "pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);" (assignment_expression "pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle)" identifier = (call_expression "get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle)" identifier (argument_list "((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle)" ( (cast_expression "(Filedata *)((filedata->file_header).e_ident + 7)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((filedata->file_header).e_ident + 7)" ( (binary_expression "(filedata->file_header).e_ident + 7" (field_expression "(filedata->file_header).e_ident" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) ))) , (binary_expression "(bfd_vma)&(filedata->file_header).e_machine" (parenthesized_expression "(bfd_vma)" ( identifier )) & (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) , (cast_expression "(Filedata *)pFVar15->handle" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pFVar15->handle" identifier -> field_identifier)) )))) ;) (expression_statement "printf(" %3s ",pcVar18);" (call_expression "printf(" %3s ",pcVar18)" identifier (argument_list "(" %3s ",pcVar18)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) (expression_statement "printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);" (call_expression "printf("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" identifier (argument_list "("     %2u   %3u     %lu\n",(ulong)(uint)(pFVar15->file_header).e_entry,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" ( (string_literal ""     %2u   %3u     %lu\n"" " string_content escape_sequence ") , (field_expression "(ulong)(uint)(pFVar15->file_header).e_entry" (call_expression "(ulong)(uint)(pFVar15->file_header)" (call_expression "(ulong)(uint)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uint)" ( identifier ))) (argument_list "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) ))) . field_identifier) , (binary_expression "(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) , (field_expression "(pFVar15->file_header).e_phoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) }) (else_clause "else {\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" else (compound_statement "{\n              pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));\n              printf("       %-15.15s  ",pcVar18);\n              print_vma(pFVar15->file_size,LONG_HEX);\n              printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n              printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);\n              print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);\n              putc(0x20,stdout);\n              print_vma((pFVar15->file_header).e_shoff,LONG_HEX);\n              printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" { (expression_statement "pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4));" (assignment_expression "pcVar18 = get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4))" identifier = (call_expression "get_section_type_name(filedata,*(uint *)((long)&pFVar15->file_name + 4))" identifier (argument_list "(filedata,*(uint *)((long)&pFVar15->file_name + 4))" ( identifier , (pointer_expression "*(uint *)((long)&pFVar15->file_name + 4)" * (cast_expression "(uint *)((long)&pFVar15->file_name + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&pFVar15->file_name + 4)" ( (binary_expression "(long)&pFVar15->file_name + 4" (cast_expression "(long)&pFVar15->file_name" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&pFVar15->file_name" & (field_expression "pFVar15->file_name" identifier -> field_identifier))) + number_literal) )))) )))) ;) (expression_statement "printf("       %-15.15s  ",pcVar18);" (call_expression "printf("       %-15.15s  ",pcVar18)" identifier (argument_list "("       %-15.15s  ",pcVar18)" ( (string_literal ""       %-15.15s  "" " string_content ") , identifier ))) ;) (expression_statement "print_vma(pFVar15->file_size,LONG_HEX);" (call_expression "print_vma(pFVar15->file_size,LONG_HEX)" identifier (argument_list "(pFVar15->file_size,LONG_HEX)" ( (field_expression "pFVar15->file_size" identifier -> field_identifier) , identifier ))) ;) (expression_statement "printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident);" (call_expression "printf("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident)" identifier (argument_list "("  %16.16lx",*(undefined8 *)(pFVar15->file_header).e_ident)" ( (string_literal ""  %16.16lx"" " string_content ") , (pointer_expression "*(undefined8 *)(pFVar15->file_header).e_ident" * (cast_expression "(undefined8 *)(pFVar15->file_header).e_ident" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) ))) ;) (expression_statement "printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry);" (call_expression "printf("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry)" identifier (argument_list "("  %u\n       ",(ulong)(uint)(pFVar15->file_header).e_entry)" ( (string_literal ""  %u\n       "" " string_content escape_sequence string_content ") , (field_expression "(ulong)(uint)(pFVar15->file_header).e_entry" (call_expression "(ulong)(uint)(pFVar15->file_header)" (call_expression "(ulong)(uint)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uint)" ( identifier ))) (argument_list "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) ))) . field_identifier) ))) ;) (expression_statement "print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX);" (call_expression "print_vma(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX)" identifier (argument_list "(*(bfd_vma *)((pFVar15->file_header).e_ident + 8),LONG_HEX)" ( (pointer_expression "*(bfd_vma *)((pFVar15->file_header).e_ident + 8)" * (cast_expression "(bfd_vma *)((pFVar15->file_header).e_ident + 8)" ( (type_descriptor "bfd_vma *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((pFVar15->file_header).e_ident + 8)" ( (binary_expression "(pFVar15->file_header).e_ident + 8" (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) )))) , identifier ))) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "print_vma((pFVar15->file_header).e_shoff,LONG_HEX);" (call_expression "print_vma((pFVar15->file_header).e_shoff,LONG_HEX)" identifier (argument_list "((pFVar15->file_header).e_shoff,LONG_HEX)" ( (field_expression "(pFVar15->file_header).e_shoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) , identifier ))) ;) (expression_statement "printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);" (call_expression "printf("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" identifier (argument_list "("  %-16u  %lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" ( (string_literal ""  %-16u  %lu\n"" " string_content escape_sequence ") , (binary_expression "(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) , (field_expression "(pFVar15->file_header).e_phoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) }))) }) (else_clause "else {\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }" else (compound_statement "{\n            print_vma(pFVar15->file_size,LONG_HEX);\n            printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);\n            printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));\n            printf(" %2.2lx",(pFVar15->file_header).e_shoff);\n            if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));\n            printf("%2lu\n",(pFVar15->file_header).e_phoff);\n          }" { (expression_statement "print_vma(pFVar15->file_size,LONG_HEX);" (call_expression "print_vma(pFVar15->file_size,LONG_HEX)" identifier (argument_list "(pFVar15->file_size,LONG_HEX)" ( (field_expression "pFVar15->file_size" identifier -> field_identifier) , identifier ))) ;) (expression_statement "printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident);" (call_expression "printf(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident)" identifier (argument_list "(" %6.6lx",*(undefined8 *)(pFVar15->file_header).e_ident)" ( (string_literal "" %6.6lx"" " string_content ") , (pointer_expression "*(undefined8 *)(pFVar15->file_header).e_ident" * (cast_expression "(undefined8 *)(pFVar15->file_header).e_ident" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) ))) ;) (expression_statement "printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8));" (call_expression "printf(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8))" identifier (argument_list "(" %6.6lx",*(undefined8 *)((pFVar15->file_header).e_ident + 8))" ( (string_literal "" %6.6lx"" " string_content ") , (pointer_expression "*(undefined8 *)((pFVar15->file_header).e_ident + 8)" * (cast_expression "(undefined8 *)((pFVar15->file_header).e_ident + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((pFVar15->file_header).e_ident + 8)" ( (binary_expression "(pFVar15->file_header).e_ident + 8" (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) )))) ))) ;) (expression_statement "printf(" %2.2lx",(pFVar15->file_header).e_shoff);" (call_expression "printf(" %2.2lx",(pFVar15->file_header).e_shoff)" identifier (argument_list "(" %2.2lx",(pFVar15->file_header).e_shoff)" ( (string_literal "" %2.2lx"" " string_content ") , (field_expression "(pFVar15->file_header).e_shoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) (if_statement "if (do_section_details == 0) {\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\n              pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);\n              printf(" %3s ",pcVar18);\n            }" { (expression_statement "pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle);" (assignment_expression "pcVar18 = get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle)" identifier = (call_expression "get_elf_section_flags\n                                  ((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle)" identifier (argument_list "((Filedata *)((filedata->file_header).e_ident + 7),\n                                   (bfd_vma)&(filedata->file_header).e_machine,\n                                   (Filedata *)pFVar15->handle)" ( (cast_expression "(Filedata *)((filedata->file_header).e_ident + 7)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((filedata->file_header).e_ident + 7)" ( (binary_expression "(filedata->file_header).e_ident + 7" (field_expression "(filedata->file_header).e_ident" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) ))) , (binary_expression "(bfd_vma)&(filedata->file_header).e_machine" (parenthesized_expression "(bfd_vma)" ( identifier )) & (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) , (cast_expression "(Filedata *)pFVar15->handle" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pFVar15->handle" identifier -> field_identifier)) )))) ;) (expression_statement "printf(" %3s ",pcVar18);" (call_expression "printf(" %3s ",pcVar18)" identifier (argument_list "(" %3s ",pcVar18)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) }) (else_clause "else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" else (compound_statement "{\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" { (expression_statement "fwrite(&DAT_0016a396,1,2,stdout);" (call_expression "fwrite(&DAT_0016a396,1,2,stdout)" identifier (argument_list "(&DAT_0016a396,1,2,stdout)" ( (pointer_expression "&DAT_0016a396" & identifier) , number_literal , number_literal , identifier ))) ;) }))) (expression_statement "printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4));" (call_expression "printf("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4))" identifier (argument_list "("%2u %3u ",(ulong)(uint)(pFVar15->file_header).e_entry,\n                   (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4))" ( (string_literal ""%2u %3u "" " string_content ") , (field_expression "(ulong)(uint)(pFVar15->file_header).e_entry" (call_expression "(ulong)(uint)(pFVar15->file_header)" (call_expression "(ulong)(uint)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uint)" ( identifier ))) (argument_list "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) ))) . field_identifier) , (binary_expression "(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) ))) ;) (expression_statement "printf("%2lu\n",(pFVar15->file_header).e_phoff);" (call_expression "printf("%2lu\n",(pFVar15->file_header).e_phoff)" identifier (argument_list "("%2lu\n",(pFVar15->file_header).e_phoff)" ( (string_literal ""%2lu\n"" " string_content escape_sequence ") , (field_expression "(pFVar15->file_header).e_phoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) }))) }) (else_clause "else {\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }" else (compound_statement "{\n          print_vma(pFVar15->file_size,LONG_HEX);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;\n          if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar25 = (uint)(pFVar15->file_header).e_entry;\n          if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }\n        }" { (expression_statement "print_vma(pFVar15->file_size,LONG_HEX);" (call_expression "print_vma(pFVar15->file_size,LONG_HEX)" identifier (argument_list "(pFVar15->file_size,LONG_HEX)" ( (field_expression "pFVar15->file_size" identifier -> field_identifier) , identifier ))) ;) (expression_statement "printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)\n          ;" (call_expression "printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)" identifier (argument_list "(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(pFVar15->file_header).e_ident,\n                 *(undefined8 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)" ( (string_literal "" %6.6lx %6.6lx %2.2lx"" " string_content ") , (pointer_expression "*(undefined8 *)(pFVar15->file_header).e_ident" * (cast_expression "(undefined8 *)(pFVar15->file_header).e_ident" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) , (pointer_expression "*(undefined8 *)((pFVar15->file_header).e_ident + 8)" * (cast_expression "(undefined8 *)((pFVar15->file_header).e_ident + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((pFVar15->file_header).e_ident + 8)" ( (binary_expression "(pFVar15->file_header).e_ident + 8" (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) )))) , (field_expression "(pFVar15->file_header).e_shoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) (if_statement "if (do_section_details == 0) {\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\n            pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);\n            printf(" %3s ",pcVar18);\n          }" { (expression_statement "pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle);" (assignment_expression "pcVar18 = get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle)" identifier = (call_expression "get_elf_section_flags\n                                ((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle)" identifier (argument_list "((Filedata *)((filedata->file_header).e_ident + 7),\n                                 (bfd_vma)&(filedata->file_header).e_machine,\n                                 (Filedata *)pFVar15->handle)" ( (cast_expression "(Filedata *)((filedata->file_header).e_ident + 7)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((filedata->file_header).e_ident + 7)" ( (binary_expression "(filedata->file_header).e_ident + 7" (field_expression "(filedata->file_header).e_ident" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) ))) , (binary_expression "(bfd_vma)&(filedata->file_header).e_machine" (parenthesized_expression "(bfd_vma)" ( identifier )) & (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) , (cast_expression "(Filedata *)pFVar15->handle" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pFVar15->handle" identifier -> field_identifier)) )))) ;) (expression_statement "printf(" %3s ",pcVar18);" (call_expression "printf(" %3s ",pcVar18)" identifier (argument_list "(" %3s ",pcVar18)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) }) (else_clause "else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" else (compound_statement "{\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" { (expression_statement "fwrite(&DAT_0016a396,1,2,stdout);" (call_expression "fwrite(&DAT_0016a396,1,2,stdout)" identifier (argument_list "(&DAT_0016a396,1,2,stdout)" ( (pointer_expression "&DAT_0016a396" & identifier) , number_literal , number_literal , identifier ))) ;) }))) (expression_statement "uVar25 = (uint)(pFVar15->file_header).e_entry;" (assignment_expression "uVar25 = (uint)(pFVar15->file_header).e_entry" identifier = (field_expression "(uint)(pFVar15->file_header).e_entry" (call_expression "(uint)(pFVar15->file_header)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) ))) . field_identifier)) ;) (if_statement "if (uVar25 < (filedata->file_header).e_shnum) {\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }\n          else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }" if (parenthesized_expression "(uVar25 < (filedata->file_header).e_shnum)" ( (binary_expression "uVar25 < (filedata->file_header).e_shnum" identifier < (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) )) (compound_statement "{\n            if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n          }" { (if_statement "if (do_section_details == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\n              printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" { (expression_statement "printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);" (call_expression "printf("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" identifier (argument_list "("%2u %3u %2lu\n",(ulong)uVar25,\n                     (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" ( (string_literal ""%2u %3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)uVar25" ( (type_descriptor "ulong" type_identifier) ) identifier) , (binary_expression "(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) , (field_expression "(pFVar15->file_header).e_phoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) }) (else_clause "else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" else (compound_statement "{\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" { (expression_statement "printf("%2u ");" (call_expression "printf("%2u ")" identifier (argument_list "("%2u ")" ( (string_literal ""%2u "" " string_content ") ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);" (call_expression "printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" identifier (argument_list "("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (binary_expression "(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) , (field_expression "(pFVar15->file_header).e_phoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) }))) }) (else_clause "else {\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }" else (compound_statement "{\n            uVar8 = (filedata->file_header).e_machine;\n            if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }\n            if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }\n          }" { (expression_statement "uVar8 = (filedata->file_header).e_machine;" (assignment_expression "uVar8 = (filedata->file_header).e_machine" identifier = (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (uVar8 == 0x12) {\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }\n            else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }" if (parenthesized_expression "(uVar8 == 0x12)" ( (binary_expression "uVar8 == 0x12" identifier == number_literal) )) (compound_statement "{\nLAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }\n              if (do_section_details == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar18);\n              printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);\n            }" { (labeled_statement "LAB_0012c0c0:\n              if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }" statement_identifier : (if_statement "if (uVar25 == 0xff00) {\n                pcVar18 = "BEFORE";\n              }\n              else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }" if (parenthesized_expression "(uVar25 == 0xff00)" ( (binary_expression "uVar25 == 0xff00" identifier == number_literal) )) (compound_statement "{\n                pcVar18 = "BEFORE";\n              }" { (expression_statement "pcVar18 = "BEFORE";" (assignment_expression "pcVar18 = "BEFORE"" identifier = (string_literal ""BEFORE"" " string_content ")) ;) }) (else_clause "else {\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }" else (compound_statement "{\n                if (uVar25 != 0xff01) goto LAB_0012c012;\n                pcVar18 = "AFTER";\n              }" { (if_statement "if (uVar25 != 0xff01) goto LAB_0012c012;" if (parenthesized_expression "(uVar25 != 0xff01)" ( (binary_expression "uVar25 != 0xff01" identifier != number_literal) )) (goto_statement "goto LAB_0012c012;" goto statement_identifier ;)) (expression_statement "pcVar18 = "AFTER";" (assignment_expression "pcVar18 = "AFTER"" identifier = (string_literal ""AFTER"" " string_content ")) ;) })))) (if_statement "if (do_section_details == 0) goto LAB_0012c248;" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012c248;" goto statement_identifier ;)) (expression_statement "printf("<%s> ",pcVar18);" (call_expression "printf("<%s> ",pcVar18)" identifier (argument_list "("<%s> ",pcVar18)" ( (string_literal ""<%s> "" " string_content ") , identifier ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff);" (call_expression "printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" identifier (argument_list "("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                     (pFVar15->file_header).e_phoff)" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (binary_expression "(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) , (field_expression "(pFVar15->file_header).e_phoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) }) (else_clause "else {\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }" else (compound_statement "{\n              if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar8 == 6) goto LAB_0012c0c0;\n              if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar18 = "";\n              if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n            }" { (if_statement "if (0x12 < uVar8) {\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }" if (parenthesized_expression "(0x12 < uVar8)" ( (binary_expression "0x12 < uVar8" number_literal < identifier) )) (compound_statement "{\n                if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }" { (if_statement "if (uVar8 != 0x3e) {\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }" if (parenthesized_expression "(uVar8 != 0x3e)" ( (binary_expression "uVar8 != 0x3e" identifier != number_literal) )) (compound_statement "{\n                  if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar8 != 0x2b) goto LAB_0012c012;\n                }" { (if_statement "if (0x3e < uVar8) {\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }" if (parenthesized_expression "(0x3e < uVar8)" ( (binary_expression "0x3e < uVar8" number_literal < identifier) )) (compound_statement "{\n                    uVar8 = uVar8 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }" { (expression_statement "uVar8 = uVar8 - 0xb4;" (assignment_expression "uVar8 = uVar8 - 0xb4" identifier = (binary_expression "uVar8 - 0xb4" identifier - number_literal)) ;) (goto_statement "goto joined_r0x0012c138;" goto statement_identifier ;) })) (if_statement "if (uVar8 != 0x2b) goto LAB_0012c012;" if (parenthesized_expression "(uVar8 != 0x2b)" ( (binary_expression "uVar8 != 0x2b" identifier != number_literal) )) (goto_statement "goto LAB_0012c012;" goto statement_identifier ;)) })) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;) })) (if_statement "if (uVar8 == 6) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar8 == 6)" ( (binary_expression "uVar8 == 6" identifier == number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;)) (if_statement "if (uVar8 < 7) {\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar8 == 0xb) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar8 < 7)" ( (binary_expression "uVar8 < 7" identifier < number_literal) )) (compound_statement "{\n                uVar8 = uVar8 - 2;\njoined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;\n              }" { (expression_statement "uVar8 = uVar8 - 2;" (assignment_expression "uVar8 = uVar8 - 2" identifier = (binary_expression "uVar8 - 2" identifier - number_literal)) ;) (labeled_statement "joined_r0x0012c138:\n                if (uVar8 < 2) goto LAB_0012c0c0;" statement_identifier : (if_statement "if (uVar8 < 2) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar8 < 2)" ( (binary_expression "uVar8 < 2" identifier < number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;))) }) (else_clause "else if (uVar8 == 0xb) goto LAB_0012c0c0;" else (if_statement "if (uVar8 == 0xb) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar8 == 0xb)" ( (binary_expression "uVar8 == 0xb" identifier == number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;)))) (labeled_statement "LAB_0012c012:\n              pcVar18 = "";" statement_identifier : (expression_statement "pcVar18 = "";" (assignment_expression "pcVar18 = """ identifier = (string_literal """" " ")) ;)) (if_statement "if (do_section_details == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }\n              else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }" { (labeled_statement "LAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);" statement_identifier : (expression_statement "printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);" (call_expression "printf("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff)" identifier (argument_list "("%2u %3u %2lu\n",(ulong)uVar25,\n                       (ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff)" ( (string_literal ""%2u %3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)uVar25" ( (type_descriptor "ulong" type_identifier) ) identifier) , (binary_expression "(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) , (field_expression "(pFVar15->file_header).e_phoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;)) }) (else_clause "else {\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }" else (compound_statement "{\n                pcVar18 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);\n              }" { (expression_statement "pcVar18 = "";" (assignment_expression "pcVar18 = """ identifier = (string_literal """" " ")) ;) (expression_statement "printf("%2u ");" (call_expression "printf("%2u ")" identifier (argument_list "("%2u ")" ( (string_literal ""%2u "" " string_content ") ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff);" (call_expression "printf("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff)" identifier (argument_list "("%3u %2lu\n",(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4),\n                       (pFVar15->file_header).e_phoff)" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (binary_expression "(ulong)*(uint *)((long)&(pFVar15->file_header).e_entry + 4)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)((long)&(pFVar15->file_header).e_entry + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pFVar15->file_header).e_entry + 4)" ( (binary_expression "(long)&(pFVar15->file_header).e_entry + 4" (cast_expression "(long)&(pFVar15->file_header).e_entry" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pFVar15->file_header).e_entry" & (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) , (field_expression "(pFVar15->file_header).e_phoff" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier) ))) ;) }))) }))) (if_statement "if (*pcVar18 == '\0') {\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }" if (parenthesized_expression "(*pcVar18 == '\0')" ( (binary_expression "*pcVar18 == '\0'" (pointer_expression "*pcVar18" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              bVar1 = (pFVar15->file_header).e_entry;\n              pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);\n              warn(pcVar18,uVar21,(ulong)(uint)bVar1);\n            }" { (expression_statement "bVar1 = (pFVar15->file_header).e_entry;" (assignment_expression "bVar1 = (pFVar15->file_header).e_entry" identifier = (field_expression "(pFVar15->file_header).e_entry" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5)" identifier (argument_list "(0,\n                                          "section %u: sh_link value of %u is larger than the number of sections\n"\n                                          ,5)" ( number_literal , (string_literal ""section %u: sh_link value of %u is larger than the number of sections\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar18,uVar21,(ulong)(uint)bVar1);" (call_expression "warn(pcVar18,uVar21,(ulong)(uint)bVar1)" identifier (argument_list "(pcVar18,uVar21,(ulong)(uint)bVar1)" ( identifier , identifier , (cast_expression "(ulong)(uint)bVar1" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(uint)bVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) ;) })) }))) }))) (if_statement "if (do_section_details == 0) {\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }" if (parenthesized_expression "(do_section_details == 0)" ( (binary_expression "do_section_details == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;\n          uVar20 = (int)uVar21 + 1;\n          uVar21 = (ulong)uVar20;\n          pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;\n          if (uVar25 <= uVar20) break;\n          goto LAB_0012b043;\n        }" { (labeled_statement "LAB_0012b030:\n          uVar25 = (filedata->file_header).e_shnum;" statement_identifier : (expression_statement "uVar25 = (filedata->file_header).e_shnum;" (assignment_expression "uVar25 = (filedata->file_header).e_shnum" identifier = (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;)) (expression_statement "uVar20 = (int)uVar21 + 1;" (assignment_expression "uVar20 = (int)uVar21 + 1" identifier = (binary_expression "(int)uVar21 + 1" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar21 = (ulong)uVar20;" (assignment_expression "uVar21 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;" (assignment_expression "pFVar15 = (Filedata *)&(pFVar15->file_header).e_type" identifier = (cast_expression "(Filedata *)&(pFVar15->file_header).e_type" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(pFVar15->file_header).e_type" & (field_expression "(pFVar15->file_header).e_type" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier)))) ;) (if_statement "if (uVar25 <= uVar20) break;" if (parenthesized_expression "(uVar25 <= uVar20)" ( (binary_expression "uVar25 <= uVar20" identifier <= identifier) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_0012b043;" goto statement_identifier ;) })) (expression_statement "pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            );" (assignment_expression "pcVar18 = get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            )" identifier = (call_expression "get_elf_section_flags\n                            ((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            )" identifier (argument_list "((Filedata *)((filedata->file_header).e_ident + 7),\n                             (bfd_vma)&(filedata->file_header).e_machine,(Filedata *)pFVar15->handle\n                            )" ( (cast_expression "(Filedata *)((filedata->file_header).e_ident + 7)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((filedata->file_header).e_ident + 7)" ( (binary_expression "(filedata->file_header).e_ident + 7" (field_expression "(filedata->file_header).e_ident" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier) + number_literal) ))) , (binary_expression "(bfd_vma)&(filedata->file_header).e_machine" (parenthesized_expression "(bfd_vma)" ( identifier )) & (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) , (cast_expression "(Filedata *)pFVar15->handle" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pFVar15->handle" identifier -> field_identifier)) )))) ;) (expression_statement "printf("       %s\n",pcVar18);" (call_expression "printf("       %s\n",pcVar18)" identifier (argument_list "("       %s\n",pcVar18)" ( (string_literal ""       %s\n"" " string_content escape_sequence ") , identifier ))) ;) (if_statement "if (((ulong)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;" if (parenthesized_expression "(((ulong)pFVar15->handle & 0x800) == 0)" ( (binary_expression "((ulong)pFVar15->handle & 0x800) == 0" (parenthesized_expression "((ulong)pFVar15->handle & 0x800)" ( (binary_expression "(ulong)pFVar15->handle & 0x800" (cast_expression "(ulong)pFVar15->handle" ( (type_descriptor "ulong" type_identifier) ) (field_expression "pFVar15->handle" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012b030;" goto statement_identifier ;)) (expression_statement "filedata_1 = (Filedata *)dcgettext(0,"compression header",5);" (assignment_expression "filedata_1 = (Filedata *)dcgettext(0,"compression header",5)" identifier = (cast_expression "(Filedata *)dcgettext(0,"compression header",5)" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"compression header",5)" identifier (argument_list "(0,"compression header",5)" ( number_literal , (string_literal ""compression header"" " string_content ") , number_literal ))))) ;) (expression_statement "pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1);" (assignment_expression "pvVar16 = get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1)" identifier = (call_expression "get_data(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1)" identifier (argument_list "(buf_3,(Filedata *)&filedata->handle,(ulong)&filedata->file_size,\n                           *(bfd_size_type *)(pFVar15->file_header).e_ident,1,(char *)0x18,\n                           filedata_1)" ( identifier , (cast_expression "(Filedata *)&filedata->handle" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&filedata->handle" & (field_expression "filedata->handle" identifier -> field_identifier))) , (binary_expression "(ulong)&filedata->file_size" (parenthesized_expression "(ulong)" ( identifier )) & (field_expression "filedata->file_size" identifier -> field_identifier)) , (pointer_expression "*(bfd_size_type *)(pFVar15->file_header).e_ident" * (cast_expression "(bfd_size_type *)(pFVar15->file_header).e_ident" ( (type_descriptor "bfd_size_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pFVar15->file_header).e_ident" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier))) , number_literal , (cast_expression "(char *)0x18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , identifier )))) ;) (if_statement "if (pvVar16 == (void *)0x0) goto LAB_0012b030;" if (parenthesized_expression "(pvVar16 == (void *)0x0)" ( (binary_expression "pvVar16 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0012b030;" goto statement_identifier ;)) (expression_statement "get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18);" (call_expression "get_compression_header((Elf_Internal_Chdr *)buf,buf_3,0x18)" identifier (argument_list "((Elf_Internal_Chdr *)buf,buf_3,0x18)" ( (cast_expression "(Elf_Internal_Chdr *)buf" ( (type_descriptor "Elf_Internal_Chdr *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal ))) ;) (expression_statement "uVar6 = buf._0_4_;" (assignment_expression "uVar6 = buf._0_4_" identifier = (field_expression "buf._0_4_" identifier . field_identifier)) ;) (if_statement "if (buf._0_4_ == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }" if (parenthesized_expression "(buf._0_4_ == 1)" ( (binary_expression "buf._0_4_ == 1" (field_expression "buf._0_4_" identifier . field_identifier) == number_literal) )) (compound_statement "{\n          printf("       ZLIB, ");\n        }" { (expression_statement "printf("       ZLIB, ");" (call_expression "printf("       ZLIB, ")" identifier (argument_list "("       ZLIB, ")" ( (string_literal ""       ZLIB, "" " string_content ") ))) ;) }) (else_clause "else {\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }" else (compound_statement "{\n          pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar18,(ulong)(uint)uVar6);\n        }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5)" identifier = (cast_expression "(char *)dcgettext(0,"       [<unknown>: 0x%x], ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"       [<unknown>: 0x%x], ",5)" identifier (argument_list "(0,"       [<unknown>: 0x%x], ",5)" ( number_literal , (string_literal ""       [<unknown>: 0x%x], "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar18,(ulong)(uint)uVar6);" (call_expression "printf(pcVar18,(ulong)(uint)uVar6)" identifier (argument_list "(pcVar18,(ulong)(uint)uVar6)" ( identifier , (cast_expression "(ulong)(uint)uVar6" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(uint)uVar6" ( (type_descriptor "uint" type_identifier) ) identifier)) ))) ;) }))) (expression_statement "uVar20 = (int)uVar21 + 1;" (assignment_expression "uVar20 = (int)uVar21 + 1" identifier = (binary_expression "(int)uVar21 + 1" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar21 = (ulong)uVar20;" (assignment_expression "uVar21 = (ulong)uVar20" identifier = (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "pFVar15 = (Filedata *)&(pFVar15->file_header).e_type;" (assignment_expression "pFVar15 = (Filedata *)&(pFVar15->file_header).e_type" identifier = (cast_expression "(Filedata *)&(pFVar15->file_header).e_type" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(pFVar15->file_header).e_type" & (field_expression "(pFVar15->file_header).e_type" (parenthesized_expression "(pFVar15->file_header)" ( (field_expression "pFVar15->file_header" identifier -> field_identifier) )) . field_identifier)))) ;) (expression_statement "print_vma(buf._8_8_,LONG_HEX);" (call_expression "print_vma(buf._8_8_,LONG_HEX)" identifier (argument_list "(buf._8_8_,LONG_HEX)" ( (field_expression "buf._8_8_" identifier . field_identifier) , identifier ))) ;) (expression_statement "printf(", %lu\n",buf._16_8_);" (call_expression "printf(", %lu\n",buf._16_8_)" identifier (argument_list "(", %lu\n",buf._16_8_)" ( (string_literal "", %lu\n"" " string_content escape_sequence ") , (field_expression "buf._16_8_" identifier . field_identifier) ))) ;) (expression_statement "uVar25 = (filedata->file_header).e_shnum;" (assignment_expression "uVar25 = (filedata->file_header).e_shnum" identifier = (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) }) while (parenthesized_expression "(uVar20 < uVar25)" ( (binary_expression "uVar20 < uVar25" identifier < identifier) )) ;)) (goto_statement "goto LAB_0012bca8;" goto statement_identifier ;) })) }) (else_clause "else {\n    pcVar18 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar18);\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (do_section_details != 0) {\n      return 1;\n    }\n  }" else (compound_statement "{\n    pcVar18 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar18);\n    uVar25 = (filedata->file_header).e_shnum;\n    pFVar15 = (Filedata *)filedata->section_headers;\n    if (uVar25 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (do_section_details != 0) {\n      return 1;\n    }\n  }" { (expression_statement "pcVar18 = (char *)dcgettext(0,"       Flags\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"       Flags\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"       Flags\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"       Flags\n",5)" identifier (argument_list "(0,"       Flags\n",5)" ( number_literal , (string_literal ""       Flags\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (expression_statement "uVar25 = (filedata->file_header).e_shnum;" (assignment_expression "uVar25 = (filedata->file_header).e_shnum" identifier = (field_expression "(filedata->file_header).e_shnum" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "pFVar15 = (Filedata *)filedata->section_headers;" (assignment_expression "pFVar15 = (Filedata *)filedata->section_headers" identifier = (cast_expression "(Filedata *)filedata->section_headers" ( (type_descriptor "Filedata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "filedata->section_headers" identifier -> field_identifier))) ;) (if_statement "if (uVar25 != 0) goto LAB_0012ae50;" if (parenthesized_expression "(uVar25 != 0)" ( (binary_expression "uVar25 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0012ae50;" goto statement_identifier ;)) (labeled_statement "LAB_0012bca8:\n    if (do_section_details != 0) {\n      return 1;\n    }" statement_identifier : (if_statement "if (do_section_details != 0) {\n      return 1;\n    }" if (parenthesized_expression "(do_section_details != 0)" ( (binary_expression "do_section_details != 0" identifier != number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) }))) }))) (expression_statement "pcVar18 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" identifier (argument_list "(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" ( number_literal , (string_literal ""Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (expression_statement "uVar8 = (filedata->file_header).e_machine;" (assignment_expression "uVar8 = (filedata->file_header).e_machine" identifier = (field_expression "(filedata->file_header).e_machine" (parenthesized_expression "(filedata->file_header)" ( (field_expression "filedata->file_header" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (((ushort)(uVar8 - 0xb4) < 2) || (uVar8 == 0x3e)) {\n    pcVar18 = "l (large), ";\n  }\n  else {\n    pcVar18 = "y (purecode), ";\n    if (uVar8 != 0x28) {\n      if (uVar8 != 0x14) goto LAB_0012bd12;\n      pcVar18 = "v (VLE), ";\n    }\n  }" if (parenthesized_expression "(((ushort)(uVar8 - 0xb4) < 2) || (uVar8 == 0x3e))" ( (binary_expression "((ushort)(uVar8 - 0xb4) < 2) || (uVar8 == 0x3e)" (parenthesized_expression "((ushort)(uVar8 - 0xb4) < 2)" ( (binary_expression "(ushort)(uVar8 - 0xb4) < 2" (call_expression "(ushort)(uVar8 - 0xb4)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar8 - 0xb4)" ( (binary_expression "uVar8 - 0xb4" identifier - number_literal) ))) < number_literal) )) || (parenthesized_expression "(uVar8 == 0x3e)" ( (binary_expression "uVar8 == 0x3e" identifier == number_literal) ))) )) (compound_statement "{\n    pcVar18 = "l (large), ";\n  }" { (expression_statement "pcVar18 = "l (large), ";" (assignment_expression "pcVar18 = "l (large), "" identifier = (string_literal ""l (large), "" " string_content ")) ;) }) (else_clause "else {\n    pcVar18 = "y (purecode), ";\n    if (uVar8 != 0x28) {\n      if (uVar8 != 0x14) goto LAB_0012bd12;\n      pcVar18 = "v (VLE), ";\n    }\n  }" else (compound_statement "{\n    pcVar18 = "y (purecode), ";\n    if (uVar8 != 0x28) {\n      if (uVar8 != 0x14) goto LAB_0012bd12;\n      pcVar18 = "v (VLE), ";\n    }\n  }" { (expression_statement "pcVar18 = "y (purecode), ";" (assignment_expression "pcVar18 = "y (purecode), "" identifier = (string_literal ""y (purecode), "" " string_content ")) ;) (if_statement "if (uVar8 != 0x28) {\n      if (uVar8 != 0x14) goto LAB_0012bd12;\n      pcVar18 = "v (VLE), ";\n    }" if (parenthesized_expression "(uVar8 != 0x28)" ( (binary_expression "uVar8 != 0x28" identifier != number_literal) )) (compound_statement "{\n      if (uVar8 != 0x14) goto LAB_0012bd12;\n      pcVar18 = "v (VLE), ";\n    }" { (if_statement "if (uVar8 != 0x14) goto LAB_0012bd12;" if (parenthesized_expression "(uVar8 != 0x14)" ( (binary_expression "uVar8 != 0x14" identifier != number_literal) )) (goto_statement "goto LAB_0012bd12;" goto statement_identifier ;)) (expression_statement "pcVar18 = "v (VLE), ";" (assignment_expression "pcVar18 = "v (VLE), "" identifier = (string_literal ""v (VLE), "" " string_content ")) ;) })) }))) (expression_statement "pcVar18 = (char *)dcgettext(0,pcVar18,5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,pcVar18,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar18,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar18,5)" identifier (argument_list "(0,pcVar18,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar18);" (call_expression "printf(pcVar18)" identifier (argument_list "(pcVar18)" ( identifier ))) ;) (labeled_statement "LAB_0012bd12:\n  puts("p (processor specific)");" statement_identifier : (expression_statement "puts("p (processor specific)");" (call_expression "puts("p (processor specific)")" identifier (argument_list "("p (processor specific)")" ( (string_literal ""p (processor specific)"" " string_content ") ))) ;)) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "undefined8 FUN_0012ac00(long param_1)\n\n{\n  short sVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  byte bVar5;\n  ushort uVar6;\n  int iVar7;\n  int iVar8;\n  byte *pbVar9;\n  ulong uVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  char *pcVar14;\n  ulong uVar15;\n  uint uVar16;\n  ulong uVar17;\n  byte *pbVar18;\n  undefined4 uVar19;\n  long lVar20;\n  byte *pbVar21;\n  uint uVar22;\n  uint uVar23;\n  uint *puVar24;\n  bool bVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  byte bVar30;\n  undefined1 local_88 [32];\n  uint local_68 [2];\n  undefined8 local_60;\n  undefined8 local_58;\n  \n  bVar30 = 0;\n  uVar22 = *(uint *)(param_1 + 100);\n  *(undefined8 *)(param_1 + 0x70) = 0;\n  if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }\n  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }\n  if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }\n  if (iVar7 == 0) {\n    return 0;\n  }\n  uVar22 = *(uint *)(param_1 + 0x68);\n  puVar24 = *(uint **)(param_1 + 0x70);\n  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }\n  DAT_00194678 = 0;\n  DAT_00194690 = 0;\n  DAT_00194670 = 0;\n  DAT_001934b0 = (undefined8 *)0x0;\n  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;\n  uVar6 = *(ushort *)(param_1 + 0x52);\n  if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar14);\n  sVar1 = *(short *)(param_1 + 0x52);\n  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}\n\n" (function_definition "undefined8 FUN_0012ac00(long param_1)\n\n{\n  short sVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  byte bVar5;\n  ushort uVar6;\n  int iVar7;\n  int iVar8;\n  byte *pbVar9;\n  ulong uVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  char *pcVar14;\n  ulong uVar15;\n  uint uVar16;\n  ulong uVar17;\n  byte *pbVar18;\n  undefined4 uVar19;\n  long lVar20;\n  byte *pbVar21;\n  uint uVar22;\n  uint uVar23;\n  uint *puVar24;\n  bool bVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  byte bVar30;\n  undefined1 local_88 [32];\n  uint local_68 [2];\n  undefined8 local_60;\n  undefined8 local_58;\n  \n  bVar30 = 0;\n  uVar22 = *(uint *)(param_1 + 100);\n  *(undefined8 *)(param_1 + 0x70) = 0;\n  if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }\n  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }\n  if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }\n  if (iVar7 == 0) {\n    return 0;\n  }\n  uVar22 = *(uint *)(param_1 + 0x68);\n  puVar24 = *(uint **)(param_1 + 0x70);\n  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }\n  DAT_00194678 = 0;\n  DAT_00194690 = 0;\n  DAT_00194670 = 0;\n  DAT_001934b0 = (undefined8 *)0x0;\n  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;\n  uVar6 = *(ushort *)(param_1 + 0x52);\n  if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar14);\n  sVar1 = *(short *)(param_1 + 0x52);\n  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}" type_identifier (function_declarator "FUN_0012ac00(long param_1)" identifier (parameter_list "(long param_1)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) ))) (compound_statement "{\n  short sVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  byte bVar5;\n  ushort uVar6;\n  int iVar7;\n  int iVar8;\n  byte *pbVar9;\n  ulong uVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  char *pcVar14;\n  ulong uVar15;\n  uint uVar16;\n  ulong uVar17;\n  byte *pbVar18;\n  undefined4 uVar19;\n  long lVar20;\n  byte *pbVar21;\n  uint uVar22;\n  uint uVar23;\n  uint *puVar24;\n  bool bVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  byte bVar30;\n  undefined1 local_88 [32];\n  uint local_68 [2];\n  undefined8 local_60;\n  undefined8 local_58;\n  \n  bVar30 = 0;\n  uVar22 = *(uint *)(param_1 + 100);\n  *(undefined8 *)(param_1 + 0x70) = 0;\n  if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }\n  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }\n  if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }\n  if (iVar7 == 0) {\n    return 0;\n  }\n  uVar22 = *(uint *)(param_1 + 0x68);\n  puVar24 = *(uint **)(param_1 + 0x70);\n  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }\n  DAT_00194678 = 0;\n  DAT_00194690 = 0;\n  DAT_00194670 = 0;\n  DAT_001934b0 = (undefined8 *)0x0;\n  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;\n  uVar6 = *(ushort *)(param_1 + 0x52);\n  if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar14);\n  sVar1 = *(short *)(param_1 + 0x52);\n  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}" { (declaration "short sVar1;" (sized_type_specifier "short" short) identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "byte bVar5;" type_identifier identifier ;) (declaration "ushort uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "ulong uVar10;" type_identifier identifier ;) (declaration "undefined8 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "undefined8 uVar13;" type_identifier identifier ;) (declaration "char *pcVar14;" primitive_type (pointer_declarator "*pcVar14" * identifier) ;) (declaration "ulong uVar15;" type_identifier identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "ulong uVar17;" type_identifier identifier ;) (declaration "byte *pbVar18;" type_identifier (pointer_declarator "*pbVar18" * identifier) ;) (declaration "undefined4 uVar19;" type_identifier identifier ;) (declaration "long lVar20;" (sized_type_specifier "long" long) identifier ;) (declaration "byte *pbVar21;" type_identifier (pointer_declarator "*pbVar21" * identifier) ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "uint *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "bool bVar25;" primitive_type identifier ;) (declaration "bool bVar26;" primitive_type identifier ;) (declaration "undefined1 uVar27;" type_identifier identifier ;) (declaration "bool bVar28;" primitive_type identifier ;) (declaration "undefined1 uVar29;" type_identifier identifier ;) (declaration "byte bVar30;" type_identifier identifier ;) (declaration "undefined1 local_88 [32];" type_identifier (array_declarator "local_88 [32]" identifier [ number_literal ]) ;) (declaration "uint local_68 [2];" type_identifier (array_declarator "local_68 [2]" identifier [ number_literal ]) ;) (declaration "undefined8 local_60;" type_identifier identifier ;) (declaration "undefined8 local_58;" type_identifier identifier ;) (expression_statement "bVar30 = 0;" (assignment_expression "bVar30 = 0" identifier = number_literal) ;) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;) (expression_statement "*(undefined8 *)(param_1 + 0x70) = 0;" (assignment_expression "*(undefined8 *)(param_1 + 0x70) = 0" (pointer_expression "*(undefined8 *)(param_1 + 0x70)" * (cast_expression "(undefined8 *)(param_1 + 0x70)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }" if (parenthesized_expression "(uVar22 == 0)" ( (binary_expression "uVar22 == 0" identifier == number_literal) )) (compound_statement "{\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }" { (if_statement "if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }" if (parenthesized_expression "(*(long *)(param_1 + 0x38) != 0)" ( (binary_expression "*(long *)(param_1 + 0x38) != 0" (pointer_expression "*(long *)(param_1 + 0x38)" * (cast_expression "(long *)(param_1 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }" { (expression_statement "uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" identifier = (call_expression "dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" identifier (argument_list "(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" ( number_literal , (string_literal ""possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" identifier (argument_list "(uVar12)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" if (parenthesized_expression "(DAT_00193494 == 0)" ( (binary_expression "DAT_00193494 == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\nThere are no sections in this file.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\nThere are no sections in this file.\n",5)" identifier (argument_list "(0,"\nThere are no sections in this file.\n",5)" ( number_literal , (string_literal ""\nThere are no sections in this file.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (if_statement "if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }" if (parenthesized_expression "((DAT_00193494 != 0) && (DAT_0019347c == 0))" ( (binary_expression "(DAT_00193494 != 0) && (DAT_0019347c == 0)" (parenthesized_expression "(DAT_00193494 != 0)" ( (binary_expression "DAT_00193494 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_0019347c == 0)" ( (binary_expression "DAT_0019347c == 0" identifier == number_literal) ))) )) (compound_statement "{\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }" { (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x38)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x38)" * (cast_expression "(undefined8 *)(param_1 + 0x38)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);" (assignment_expression "pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" identifier = (cast_expression "(char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" identifier (argument_list "(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" ( number_literal , (string_literal ""There is %d section header, starting at offset 0x%lx:\n"" " string_content escape_sequence ") , (string_literal ""There are %d section headers, starting at offset 0x%lx:\n"" " string_content escape_sequence ") , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar14,(ulong)uVar22,uVar12);" (call_expression "printf(pcVar14,(ulong)uVar22,uVar12)" identifier (argument_list "(pcVar14,(ulong)uVar22,uVar12)" ( identifier , (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier ))) ;) })) (if_statement "if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }" if (parenthesized_expression "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )) (compound_statement "{\n    iVar7 = FUN_00115940(param_1,0);\n  }" { (expression_statement "iVar7 = FUN_00115940(param_1,0);" (assignment_expression "iVar7 = FUN_00115940(param_1,0)" identifier = (call_expression "FUN_00115940(param_1,0)" identifier (argument_list "(param_1,0)" ( identifier , number_literal )))) ;) }) (else_clause "else {\n    iVar7 = FUN_00115650();\n  }" else (compound_statement "{\n    iVar7 = FUN_00115650();\n  }" { (expression_statement "iVar7 = FUN_00115650();" (assignment_expression "iVar7 = FUN_00115650()" identifier = (call_expression "FUN_00115650()" identifier (argument_list "()" ( )))) ;) }))) (if_statement "if (iVar7 == 0) {\n    return 0;\n  }" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "uVar22 = *(uint *)(param_1 + 0x68);" (assignment_expression "uVar22 = *(uint *)(param_1 + 0x68)" identifier = (pointer_expression "*(uint *)(param_1 + 0x68)" * (cast_expression "(uint *)(param_1 + 0x68)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x68)" ( (binary_expression "param_1 + 0x68" identifier + number_literal) ))))) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (if_statement "if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }" if (parenthesized_expression "(((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0))" ( (binary_expression "((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)" (parenthesized_expression "((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100)))" ( (binary_expression "(uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))" (parenthesized_expression "(uVar22 != 0)" ( (binary_expression "uVar22 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" ( (binary_expression "uVar22 < *(uint *)(param_1 + 100)" identifier < (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ))) )) && (parenthesized_expression "(*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)" ( (binary_expression "*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0" (pointer_expression "*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" * (cast_expression "(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" identifier + (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }" { (expression_statement "uVar12 = dcgettext(0,"string table",5);" (assignment_expression "uVar12 = dcgettext(0,"string table",5)" identifier = (call_expression "dcgettext(0,"string table",5)" identifier (argument_list "(0,"string table",5)" ( number_literal , (string_literal ""string table"" " string_content ") , number_literal )))) ;) (expression_statement "lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);" (assignment_expression "lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" identifier = (call_expression "FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" identifier (argument_list "(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" ( number_literal , (binary_expression "param_1 + 8" identifier + number_literal) , (binary_expression "param_1 + 0x10" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6)" * (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 6)" ( (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 6" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" identifier + (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) , number_literal , (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" * (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" identifier + (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) , identifier )))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (expression_statement "*(long *)(param_1 + 0x80) = lVar20;" (assignment_expression "*(long *)(param_1 + 0x80) = lVar20" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) = identifier) ;) (if_statement "if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }" if (parenthesized_expression "(lVar20 != 0)" ( (binary_expression "lVar20 != 0" identifier != number_literal) )) (compound_statement "{\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }" { (expression_statement "uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);" (assignment_expression "uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" identifier = (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" * (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" ( (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" identifier + (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) ))))) ;) })) (expression_statement "*(undefined8 *)(param_1 + 0x88) = uVar12;" (assignment_expression "*(undefined8 *)(param_1 + 0x88) = uVar12" (pointer_expression "*(undefined8 *)(param_1 + 0x88)" * (cast_expression "(undefined8 *)(param_1 + 0x88)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) })) (expression_statement "DAT_00194678 = 0;" (assignment_expression "DAT_00194678 = 0" identifier = number_literal) ;) (expression_statement "DAT_00194690 = 0;" (assignment_expression "DAT_00194690 = 0" identifier = number_literal) ;) (expression_statement "DAT_00194670 = 0;" (assignment_expression "DAT_00194670 = 0" identifier = number_literal) ;) (expression_statement "DAT_001934b0 = (undefined8 *)0x0;" (assignment_expression "DAT_001934b0 = (undefined8 *)0x0" identifier = (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;" (assignment_expression "DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4" identifier = (binary_expression "(-(uint)(DAT_0019345c == 0) & 4) + 4" (parenthesized_expression "(-(uint)(DAT_0019345c == 0) & 4)" ( (binary_expression "-(uint)(DAT_0019345c == 0) & 4" (unary_expression "-(uint)(DAT_0019345c == 0)" - (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) (expression_statement "uVar6 = *(ushort *)(param_1 + 0x52);" (assignment_expression "uVar6 = *(ushort *)(param_1 + 0x52)" identifier = (pointer_expression "*(ushort *)(param_1 + 0x52)" * (cast_expression "(ushort *)(param_1 + 0x52)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x52)" ( (binary_expression "param_1 + 0x52" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" if (parenthesized_expression "(uVar6 < 0x30)" ( (binary_expression "uVar6 < 0x30" identifier < number_literal) )) (compound_statement "{\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }" { (if_statement "if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" if (parenthesized_expression "(uVar6 < 0x2e)" ( (binary_expression "uVar6 < 0x2e" identifier < number_literal) )) (compound_statement "{\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }" { (if_statement "if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }" if (parenthesized_expression "(((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000))" ( (binary_expression "((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)" (parenthesized_expression "((uVar6 == 8) || (uVar6 == 10))" ( (binary_expression "(uVar6 == 8) || (uVar6 == 10)" (parenthesized_expression "(uVar6 == 8)" ( (binary_expression "uVar6 == 8" identifier == number_literal) )) || (parenthesized_expression "(uVar6 == 10)" ( (binary_expression "uVar6 == 10" identifier == number_literal) ))) )) && (parenthesized_expression "(((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)" ( (binary_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000" (parenthesized_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000)" ( (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0xf000" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }" { (if_statement "if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }" if (parenthesized_expression "(puVar24 != (uint *)0x0)" ( (binary_expression "puVar24 != (uint *)0x0" identifier != (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }" { (expression_statement "lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");" (assignment_expression "lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32")" identifier = (call_expression "FUN_001193c0(param_1,".gcc_compiled_long32")" identifier (argument_list "(param_1,".gcc_compiled_long32")" ( identifier , (string_literal "".gcc_compiled_long32"" " string_content ") )))) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (if_statement "if (lVar20 != 0) goto LAB_0012ad0a;" if (parenthesized_expression "(lVar20 != 0)" ( (binary_expression "lVar20 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) })) (expression_statement "DAT_00196f54 = 8;" (assignment_expression "DAT_00196f54 = 8" identifier = number_literal) ;) })) }) (else_clause "else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" else (compound_statement "{\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" { (expression_statement "uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;" (assignment_expression "uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000" identifier = (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) & number_literal)) ;) (if_statement "if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }" if (parenthesized_expression "(uVar22 != 0x830000)" ( (binary_expression "uVar22 != 0x830000" identifier != number_literal) )) (compound_statement "{\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }" { (if_statement "if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" if (parenthesized_expression "(uVar22 < 0x830001)" ( (binary_expression "uVar22 < 0x830001" identifier < number_literal) )) (compound_statement "{\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }" { (if_statement "if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }" if (parenthesized_expression "((uVar22 == 0x810000) || (uVar22 == 0x820000))" ( (binary_expression "(uVar22 == 0x810000) || (uVar22 == 0x820000)" (parenthesized_expression "(uVar22 == 0x810000)" ( (binary_expression "uVar22 == 0x810000" identifier == number_literal) )) || (parenthesized_expression "(uVar22 == 0x820000)" ( (binary_expression "uVar22 == 0x820000" identifier == number_literal) ))) )) (compound_statement "{\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }" { (labeled_statement "LAB_0012c4d0:\n            DAT_00196f54 = 4;" statement_identifier : (expression_statement "DAT_00196f54 = 4;" (assignment_expression "DAT_00196f54 = 4" identifier = number_literal) ;)) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;) })) (if_statement "if (uVar22 != 0x800000) goto LAB_0012ad0a;" if (parenthesized_expression "(uVar22 != 0x800000)" ( (binary_expression "uVar22 != 0x800000" identifier != number_literal) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) }) (else_clause "else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" else (compound_statement "{\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" { (if_statement "if (uVar22 == 0x850000) goto LAB_0012c4d0;" if (parenthesized_expression "(uVar22 == 0x850000)" ( (binary_expression "uVar22 == 0x850000" identifier == number_literal) )) (goto_statement "goto LAB_0012c4d0;" goto statement_identifier ;)) (if_statement "if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;" if (parenthesized_expression "((uVar22 != 0x860000) && (uVar22 != 0x840000))" ( (binary_expression "(uVar22 != 0x860000) && (uVar22 != 0x840000)" (parenthesized_expression "(uVar22 != 0x860000)" ( (binary_expression "uVar22 != 0x860000" identifier != number_literal) )) && (parenthesized_expression "(uVar22 != 0x840000)" ( (binary_expression "uVar22 != 0x840000" identifier != number_literal) ))) )) (goto_statement "goto LAB_0012ad0a;" goto statement_identifier ;)) }))) })) (labeled_statement "LAB_0012b791:\n      DAT_00196f54 = 2;" statement_identifier : (expression_statement "DAT_00196f54 = 2;" (assignment_expression "DAT_00196f54 = 2" identifier = number_literal) ;)) }))) }) (else_clause "else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" else (if_statement "if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" if (parenthesized_expression "(((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75))" ( (binary_expression "((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)" (parenthesized_expression "((uVar6 == 0x78) || (uVar6 == 0xfeb0))" ( (binary_expression "(uVar6 == 0x78) || (uVar6 == 0xfeb0)" (parenthesized_expression "(uVar6 == 0x78)" ( (binary_expression "uVar6 == 0x78" identifier == number_literal) )) || (parenthesized_expression "(uVar6 == 0xfeb0)" ( (binary_expression "uVar6 == 0xfeb0" identifier == number_literal) ))) )) && (parenthesized_expression "(((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)" ( (binary_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75" (parenthesized_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f)" ( (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0x7f" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) & number_literal) )) == number_literal) ))) )) (goto_statement "goto LAB_0012b791;" goto statement_identifier ;)))) (labeled_statement "LAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" statement_identifier : (if_statement "if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" if (parenthesized_expression "(*(int *)(param_1 + 100) == 0)" ( (binary_expression "*(int *)(param_1 + 100) == 0" (pointer_expression "*(int *)(param_1 + 100)" * (cast_expression "(int *)(param_1 + 100)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }" { (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" if (parenthesized_expression "(DAT_00193494 == 0)" ( (binary_expression "DAT_00193494 == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (labeled_statement "LAB_0012c296:\n    pcVar14 = "\nSection Header:\n";" statement_identifier : (expression_statement "pcVar14 = "\nSection Header:\n";" (assignment_expression "pcVar14 = "\nSection Header:\n"" identifier = (string_literal ""\nSection Header:\n"" " escape_sequence string_content escape_sequence ")) ;)) }) (else_clause "else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" else (compound_statement "{\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" { (expression_statement "uVar22 = 0;" (assignment_expression "uVar22 = 0" identifier = number_literal) ;) (do_statement "do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));" do (compound_statement "{\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    }" { (if_statement "if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" if (parenthesized_expression "(puVar24 == (uint *)0x0)" ( (binary_expression "puVar24 == (uint *)0x0" identifier == (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }" { (expression_statement "pbVar9 = (byte *)dcgettext(0,"<none>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<none>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<none>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<none>",5)" identifier (argument_list "(0,"<none>",5)" ( number_literal , (string_literal ""<none>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" else (if_statement "if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" if (parenthesized_expression "(*(long *)(param_1 + 0x80) == 0)" ( (binary_expression "*(long *)(param_1 + 0x80) == 0" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }" { (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" else (compound_statement "{\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" { (expression_statement "pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);" (assignment_expression "pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" identifier = (cast_expression "(byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" ( (binary_expression "*(long *)(param_1 + 0x80) + (ulong)*puVar24" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) + (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) )))) ;) (if_statement "if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }" if (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24)" ( (binary_expression "*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24" (pointer_expression "*(ulong *)(param_1 + 0x88)" * (cast_expression "(ulong *)(param_1 + 0x88)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) <= (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) )) (compound_statement "{\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }" { (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) })) }))))) (expression_statement "iVar4 = DAT_00196f7c;" (assignment_expression "iVar4 = DAT_00196f7c" identifier = identifier) ;) (expression_statement "iVar3 = DAT_00196f48;" (assignment_expression "iVar3 = DAT_00196f48" identifier = identifier) ;) (expression_statement "iVar2 = DAT_00196f3c;" (assignment_expression "iVar2 = DAT_00196f3c" identifier = identifier) ;) (expression_statement "iVar7 = DAT_00196f28;" (assignment_expression "iVar7 = DAT_00196f28" identifier = identifier) ;) (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" if (parenthesized_expression "(uVar16 == 0xb)" ( (binary_expression "uVar16 == 0xb" identifier == number_literal) )) (compound_statement "{\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }" { (expression_statement "pcVar14 = "File contains multiple dynamic symbol tables\n";" (assignment_expression "pcVar14 = "File contains multiple dynamic symbol tables\n"" identifier = (string_literal ""File contains multiple dynamic symbol tables\n"" " string_content escape_sequence ")) ;) (if_statement "if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" if (parenthesized_expression "(DAT_00194678 == 0)" ( (binary_expression "DAT_00194678 == 0" identifier == number_literal) )) (compound_statement "{\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }" { (if_statement "if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" if (parenthesized_expression "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )) (compound_statement "{\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }" { (if_statement "if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 0x18)" ( (binary_expression "*(long *)(puVar24 + 0xe) != 0x18" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }" { (expression_statement "uVar19 = 0x18;" (assignment_expression "uVar19 = 0x18" identifier = number_literal) ;) (expression_statement "uVar12 = 0x18;" (assignment_expression "uVar12 = 0x18" identifier = number_literal) ;) (goto_statement "goto LAB_0012b923;" goto statement_identifier ;) })) (labeled_statement "LAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);" statement_identifier : (expression_statement "DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);" (assignment_expression "DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680)" identifier = (call_expression "FUN_00114ea0(param_1,puVar24,&DAT_00194680)" identifier (argument_list "(param_1,puVar24,&DAT_00194680)" ( identifier , identifier , (pointer_expression "&DAT_00194680" & identifier) )))) ;)) }) (else_clause "else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" else (compound_statement "{\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" { (if_statement "if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 0x10)" ( (binary_expression "*(long *)(puVar24 + 0xe) != 0x10" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }" { (expression_statement "uVar19 = 0x10;" (assignment_expression "uVar19 = 0x10" identifier = number_literal) ;) (expression_statement "uVar12 = 0x10;" (assignment_expression "uVar12 = 0x10" identifier = number_literal) ;) (labeled_statement "LAB_0012b923:\n              sprintf((char *)local_68,"%016lx");" statement_identifier : (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" identifier (argument_list "((char *)local_68,"%016lx")" ( (cast_expression "(char *)local_68" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016lx"" " string_content ") ))) ;)) (expression_statement "uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar13,uVar22,local_68);" (call_expression "error(uVar13,uVar22,local_68)" identifier (argument_list "(uVar13,uVar22,local_68)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier = (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar13,uVar19);" (call_expression "error(uVar13,uVar19)" identifier (argument_list "(uVar13,uVar19)" ( identifier , identifier ))) ;) (expression_statement "iVar7 = DAT_0019345c;" (assignment_expression "iVar7 = DAT_0019345c" identifier = identifier) ;) (expression_statement "*(undefined8 *)(puVar24 + 0xe) = uVar12;" (assignment_expression "*(undefined8 *)(puVar24 + 0xe) = uVar12" (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) = identifier) ;) (if_statement "if (iVar7 == 0) goto LAB_0012b7d2;" if (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012b7d2;" goto statement_identifier ;)) })) (expression_statement "DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);" (assignment_expression "DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680)" identifier = (call_expression "FUN_001149b0(param_1,puVar24,&DAT_00194680)" identifier (argument_list "(param_1,puVar24,&DAT_00194680)" ( identifier , identifier , (pointer_expression "&DAT_00194680" & identifier) )))) ;) }))) }) (else_clause "else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" else (compound_statement "{\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" { (labeled_statement "LAB_0012b69a:\n          dcgettext(0,pcVar14,5);" statement_identifier : (expression_statement "dcgettext(0,pcVar14,5);" (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal ))) ;)) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) }))) }) (else_clause "else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" else (compound_statement "{\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" { (expression_statement "bVar25 = uVar16 < 3;" (assignment_expression "bVar25 = uVar16 < 3" identifier = (binary_expression "uVar16 < 3" identifier < number_literal)) ;) (expression_statement "bVar28 = uVar16 == 3;" (assignment_expression "bVar28 = uVar16 == 3" identifier = (binary_expression "uVar16 == 3" identifier == number_literal)) ;) (if_statement "if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".dynstr";" (assignment_expression "pbVar21 = (byte *)".dynstr"" identifier = (cast_expression "(byte *)".dynstr"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".dynstr"" " string_content "))) ;) (do_statement "do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);" do (compound_statement "{\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (compound_statement "{\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }" { (if_statement "if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }" if (parenthesized_expression "(DAT_00194690 != 0)" ( (binary_expression "DAT_00194690 != 0" identifier != number_literal) )) (compound_statement "{\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }" { (expression_statement "pcVar14 = "File contains multiple dynamic string tables\n";" (assignment_expression "pcVar14 = "File contains multiple dynamic string tables\n"" identifier = (string_literal ""File contains multiple dynamic string tables\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b69a;" goto statement_identifier ;) })) (expression_statement "uVar12 = dcgettext(0,"dynamic strings",5);" (assignment_expression "uVar12 = dcgettext(0,"dynamic strings",5)" identifier = (call_expression "dcgettext(0,"dynamic strings",5)" identifier (argument_list "(0,"dynamic strings",5)" ( number_literal , (string_literal ""dynamic strings"" " string_content ") , number_literal )))) ;) (expression_statement "DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);" (assignment_expression "DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" identifier = (call_expression "FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" identifier (argument_list "(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" ( number_literal , (binary_expression "param_1 + 8" identifier + number_literal) , (binary_expression "param_1 + 0x10" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) , number_literal , (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) , identifier )))) ;) (expression_statement "DAT_00194688 = 0;" (assignment_expression "DAT_00194688 = 0" identifier = number_literal) ;) (if_statement "if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }" if (parenthesized_expression "(DAT_00194690 != 0)" ( (binary_expression "DAT_00194690 != 0" identifier != number_literal) )) (compound_statement "{\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }" { (expression_statement "DAT_00194688 = *(undefined8 *)(puVar24 + 8);" (assignment_expression "DAT_00194688 = *(undefined8 *)(puVar24 + 8)" identifier = (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) ))))) ;) })) }) (else_clause "else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" else (compound_statement "{\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" { (labeled_statement "LAB_0012b1ff:\n            bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);" (assignment_expression "bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" identifier = (binary_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" (parenthesized_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0)" ( (binary_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0" (parenthesized_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0)" ( (binary_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0" (parenthesized_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0)" ( (binary_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0" (parenthesized_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0)" ( (binary_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0" (parenthesized_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0)" ( (binary_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0" (parenthesized_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0)" ( (binary_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0" (parenthesized_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0)" ( (binary_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0" (parenthesized_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0)" ( (binary_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0" (parenthesized_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0)" ( (binary_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0" (parenthesized_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0)" ( (binary_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0" (parenthesized_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0)" ( (binary_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0" (parenthesized_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0)" ( (binary_expression "DAT_00196f40 == 0 && DAT_00196f5c == 0" (binary_expression "DAT_00196f40 == 0" identifier == number_literal) && (binary_expression "DAT_00196f5c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f38 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f68 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f30 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f34 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f6c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f28 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f3c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f60 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f48 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f7c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f74 == 0" identifier == number_literal)) )) && (parenthesized_expression "(DAT_00196f2c == 0 && DAT_0019346c == 0)" ( (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" identifier == number_literal) && (binary_expression "DAT_0019346c == 0" identifier == number_literal)) )))) ;) (if_statement "if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;" if (parenthesized_expression "(((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0))" ( (binary_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" (parenthesized_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0)" ( (binary_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0" (parenthesized_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0)" ( (binary_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0" (parenthesized_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0)" ( (binary_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0" (parenthesized_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0)" ( (binary_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0" (parenthesized_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0)" ( (binary_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0" (parenthesized_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0)" ( (binary_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0" (parenthesized_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0)" ( (binary_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0" (parenthesized_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0)" ( (binary_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0" (parenthesized_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0)" ( (binary_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0" (parenthesized_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0)" ( (binary_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0" (parenthesized_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0)" ( (binary_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0" (parenthesized_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0)" ( (binary_expression "DAT_00196f40 == 0 && DAT_00196f5c == 0" (binary_expression "DAT_00196f40 == 0" identifier == number_literal) && (binary_expression "DAT_00196f5c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f38 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f68 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f30 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f34 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f6c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f28 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f3c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f60 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f48 == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f7c == 0" identifier == number_literal)) )) && (binary_expression "DAT_00196f74 == 0" identifier == number_literal)) )) && (parenthesized_expression "(DAT_00196f2c == 0 && DAT_0019346c == 0)" ( (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" identifier == number_literal) && (binary_expression "DAT_0019346c == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_0012b2b0;" goto statement_identifier ;)) (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".debug_";" (assignment_expression "pbVar21 = (byte *)".debug_"" identifier = (cast_expression "(byte *)".debug_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_"" " string_content "))) ;) (do_statement "do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);" do (compound_statement "{\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }" { (labeled_statement "LAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;" statement_identifier : (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" identifier = (binary_expression "pbVar9 + 7" identifier + number_literal)) ;)) (if_statement "if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }" if (parenthesized_expression "(pbVar9[1] == 0x7a)" ( (binary_expression "pbVar9[1] == 0x7a" (subscript_expression "pbVar9[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                pbVar18 = pbVar9 + 8;\n              }" { (expression_statement "pbVar18 = pbVar9 + 8;" (assignment_expression "pbVar18 = pbVar9 + 8" identifier = (binary_expression "pbVar9 + 8" identifier + number_literal)) ;) })) (if_statement "if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }" if (parenthesized_expression "(DAT_0019346c == 0)" ( (binary_expression "DAT_0019346c == 0" identifier == number_literal) )) (compound_statement "{\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }" { (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar25 = DAT_00196f2c == 0;" (assignment_expression "bVar25 = DAT_00196f2c == 0" identifier = (binary_expression "DAT_00196f2c == 0" identifier == number_literal)) ;) (if_statement "if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" if (parenthesized_expression "(bVar25)" ( identifier )) (compound_statement "{\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }" { (labeled_statement "LAB_0012b446:\n                  bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f40 == 0;" (assignment_expression "bVar28 = DAT_00196f40 == 0" identifier = (binary_expression "DAT_00196f40 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }" { (expression_statement "lVar20 = 6;" (assignment_expression "lVar20 = 6" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1826c0;" (assignment_expression "pbVar21 = (byte *)0x1826c0" identifier = (cast_expression "(byte *)0x1826c0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f5c == 0;" (assignment_expression "bVar28 = DAT_00196f5c == 0" identifier = (binary_expression "DAT_00196f5c == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }" { (labeled_statement "LAB_0012b490:\n                    bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f38 == 0;" (assignment_expression "bVar28 = DAT_00196f38 == 0" identifier = (binary_expression "DAT_00196f38 == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }" { (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f68 == 0;" (assignment_expression "bVar28 = DAT_00196f68 == 0" identifier = (binary_expression "DAT_00196f68 == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }" { (labeled_statement "LAB_0012b4dd:\n                        bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f30 == 0;" (assignment_expression "bVar28 = DAT_00196f30 == 0" identifier = (binary_expression "DAT_00196f30 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1826ce;" (assignment_expression "pbVar21 = (byte *)0x1826ce" identifier = (cast_expression "(byte *)0x1826ce" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);" do (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f60 == 0;" (assignment_expression "bVar28 = DAT_00196f60 == 0" identifier = (binary_expression "DAT_00196f60 == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }" { (labeled_statement "LAB_0012b547:\n                          bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f34 == 0;" (assignment_expression "bVar28 = DAT_00196f34 == 0" identifier = (binary_expression "DAT_00196f34 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }" { (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x18246b;" (assignment_expression "pbVar21 = (byte *)0x18246b" identifier = (cast_expression "(byte *)0x18246b" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);" do (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f6c == 0;" (assignment_expression "bVar28 = DAT_00196f6c == 0" identifier = (binary_expression "DAT_00196f6c == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1824f6;" (assignment_expression "pbVar21 = (byte *)0x1824f6" identifier = (cast_expression "(byte *)0x1824f6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);" do (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;" if (parenthesized_expression "(((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))" ( (binary_expression "((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0)" (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) || (parenthesized_expression "(iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0)" ( (comma_expression "iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0" (assignment_expression "iVar8 = strncmp((char *)pbVar18,"macro",5)" identifier = (call_expression "strncmp((char *)pbVar18,"macro",5)" identifier (argument_list "((char *)pbVar18,"macro",5)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""macro"" " string_content ") , number_literal )))) , (binary_expression "iVar8 == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (if_statement "if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;" if (parenthesized_expression "(((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))" ( (binary_expression "((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))))" (parenthesized_expression "((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0))))" ( (binary_expression "(((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))" (parenthesized_expression "(((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))))))" ( (binary_expression "((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))" (parenthesized_expression "((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0))" ( (binary_expression "(iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)" (parenthesized_expression "(iVar7 == 0)" ( (binary_expression "iVar7 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"str",3)" identifier = (call_expression "strncmp((char *)pbVar18,"str",3)" identifier (argument_list "((char *)pbVar18,"str",3)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""str"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) ))) )) && (parenthesized_expression "((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))" ( (parenthesized_expression "(iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))))" ( (binary_expression "iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))" (binary_expression "iVar2 == 0" identifier == number_literal) || (parenthesized_expression "((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))" ( (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"loc",3)" identifier = (call_expression "strncmp((char *)pbVar18,"loc",3)" identifier (argument_list "((char *)pbVar18,"loc",3)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loc"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" (binary_expression "iVar7 != 0" identifier != number_literal) && (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"loclists",8)" identifier = (call_expression "strncmp((char *)pbVar18,"loclists",8)" identifier (argument_list "((char *)pbVar18,"loclists",8)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""loclists"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) )))) )) ))) )) ))) )) && (parenthesized_expression "((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))" ( (parenthesized_expression "(iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0))" ( (binary_expression "iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)" (binary_expression "iVar3 == 0" identifier == number_literal) || (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"addr",4)" identifier = (call_expression "strncmp((char *)pbVar18,"addr",4)" identifier (argument_list "((char *)pbVar18,"addr",4)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""addr"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) ))) )) ))) )) && (parenthesized_expression "((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))))" ( (parenthesized_expression "(iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))" ( (binary_expression "iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))" (binary_expression "iVar4 == 0" identifier == number_literal) || (parenthesized_expression "((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))" ( (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"cu_index",8)" identifier = (call_expression "strncmp((char *)pbVar18,"cu_index",8)" identifier (argument_list "((char *)pbVar18,"cu_index",8)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""cu_index"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" (binary_expression "iVar7 != 0" identifier != number_literal) && (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" ( (comma_expression "iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"tu_index",8)" identifier = (call_expression "strncmp((char *)pbVar18,"tu_index",8)" identifier (argument_list "((char *)pbVar18,"tu_index",8)" ( (cast_expression "(char *)pbVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""tu_index"" " string_content ") , number_literal )))) , (binary_expression "iVar7 != 0" identifier != number_literal)) )))) )) ))) )) ))) )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) }) (else_clause "else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" else (compound_statement "{\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" { (expression_statement "lVar20 = 6;" (assignment_expression "lVar20 = 6" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x185a13;" (assignment_expression "pbVar21 = (byte *)0x185a13" identifier = (cast_expression "(byte *)0x185a13" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);" do (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x182607;" (assignment_expression "pbVar21 = (byte *)0x182607" identifier = (cast_expression "(byte *)0x182607" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);" do (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b547;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" else (compound_statement "{\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1862bf;" (assignment_expression "pbVar21 = (byte *)0x1862bf" identifier = (cast_expression "(byte *)0x1862bf" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);" do (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (labeled_statement "joined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" statement_identifier : (if_statement "if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" { (expression_statement "pcVar14 = ".debug_gnu_pubtypes";" (assignment_expression "pcVar14 = ".debug_gnu_pubtypes"" identifier = (string_literal "".debug_gnu_pubtypes"" " string_content ")) ;) (labeled_statement "LAB_0012b4cb:\n                          bVar28 = false;" statement_identifier : (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;)) (expression_statement "lVar20 = 0xc;" (assignment_expression "lVar20 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)(pcVar14 + 7);" (assignment_expression "pbVar21 = (byte *)(pcVar14 + 7)" identifier = (cast_expression "(byte *)(pcVar14 + 7)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar14 + 7)" ( (binary_expression "pcVar14 + 7" identifier + number_literal) )))) ;) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);" do (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;" if (parenthesized_expression "((!bVar28 && !bVar25) != bVar28)" ( (binary_expression "(!bVar28 && !bVar25) != bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" ( (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b4dd;" goto statement_identifier ;)) }))) }))) }) (else_clause "else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" else (compound_statement "{\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1862ac;" (assignment_expression "pbVar21 = (byte *)0x1862ac" identifier = (cast_expression "(byte *)0x1862ac" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" do (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }" if (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" ( (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) != identifier) )) (compound_statement "{\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }" { (expression_statement "pcVar14 = ".debug_gnu_pubnames";" (assignment_expression "pcVar14 = ".debug_gnu_pubnames"" identifier = (string_literal "".debug_gnu_pubnames"" " string_content ")) ;) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;) (expression_statement "bVar25 = DAT_00196f68 == 0;" (assignment_expression "bVar25 = DAT_00196f68 == 0" identifier = (binary_expression "DAT_00196f68 == 0" identifier == number_literal)) ;) (if_statement "if (bVar25) goto LAB_0012b4cb;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012b4cb;" goto statement_identifier ;)) (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1862bf;" (assignment_expression "pbVar21 = (byte *)0x1862bf" identifier = (cast_expression "(byte *)0x1862bf" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);" do (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" identifier = (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" ( (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }" { (expression_statement "lVar20 = 0xc;" (assignment_expression "lVar20 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1824cd;" (assignment_expression "pbVar21 = (byte *)0x1824cd" identifier = (cast_expression "(byte *)0x1824cd" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);" do (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar25 = (!bVar26 && !bVar25) == bVar26;" (assignment_expression "bVar25 = (!bVar26 && !bVar25) == bVar26" identifier = (binary_expression "(!bVar26 && !bVar25) == bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (goto_statement "goto joined_r0x0012c500;" goto statement_identifier ;) })) })) }))) }) (else_clause "else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" else (compound_statement "{\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" { (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x182493;" (assignment_expression "pbVar21 = (byte *)0x182493" identifier = (cast_expression "(byte *)0x182493" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }" { (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x16ac78;" (assignment_expression "pbVar21 = (byte *)0x16ac78" identifier = (cast_expression "(byte *)0x16ac78" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);" do (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b490;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" else (compound_statement "{\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" { (expression_statement "lVar20 = 4;" (assignment_expression "lVar20 = 4" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1663a6;" (assignment_expression "pbVar21 = (byte *)0x1663a6" identifier = (cast_expression "(byte *)0x1663a6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);" do (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" identifier = (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" ( (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }" { (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)0x1857df;" (assignment_expression "pbVar21 = (byte *)0x1857df" identifier = (cast_expression "(byte *)0x1857df" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" identifier = (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" identifier = (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b446;" goto statement_identifier ;)) })) }))) })) }) (else_clause "else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" else (compound_statement "{\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".zdebug_";" (assignment_expression "pbVar21 = (byte *)".zdebug_"" identifier = (cast_expression "(byte *)".zdebug_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".zdebug_"" " string_content "))) ;) (do_statement "do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);" do (compound_statement "{\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar18 < *pbVar21;" (assignment_expression "bVar26 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;" if (parenthesized_expression "((!bVar26 && !bVar25) == bVar26)" ( (binary_expression "(!bVar26 && !bVar25) == bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3f7;" goto statement_identifier ;)) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;" (assignment_expression "bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0" identifier = (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" identifier == number_literal) && (binary_expression "DAT_0019346c == 0" identifier == number_literal))) ;) (if_statement "if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }" { (labeled_statement "LAB_0012b2b0:\n                bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f34 == 0;" (assignment_expression "bVar28 = DAT_00196f34 == 0" identifier = (binary_expression "DAT_00196f34 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }" { (expression_statement "lVar20 = 10;" (assignment_expression "lVar20 = 10" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".eh_frame";" (assignment_expression "pbVar21 = (byte *)".eh_frame"" identifier = (cast_expression "(byte *)".eh_frame"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".eh_frame"" " string_content "))) ;) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);" do (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f78 == 0;" (assignment_expression "bVar28 = DAT_00196f78 == 0" identifier = (binary_expression "DAT_00196f78 == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }" { (labeled_statement "LAB_0012b31e:\n                  bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_0019346c == 0;" (assignment_expression "bVar28 = DAT_0019346c == 0" identifier = (binary_expression "DAT_0019346c == 0" identifier == number_literal)) ;) (if_statement "if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" if (parenthesized_expression "(bVar28)" ( identifier )) (compound_statement "{\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }" { (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f64 == 0;" (assignment_expression "bVar28 = DAT_00196f64 == 0" identifier = (binary_expression "DAT_00196f64 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" do (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (compound_statement "{\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }" { (expression_statement "bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;" (assignment_expression "bVar25 = (byte *)0xfffffffffffffff8 < pbVar9" identifier = (binary_expression "(byte *)0xfffffffffffffff8 < pbVar9" (cast_expression "(byte *)0xfffffffffffffff8" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier)) ;) (expression_statement "bVar28 = pbVar9 + 7 == (byte *)0x0;" (assignment_expression "bVar28 = pbVar9 + 7 == (byte *)0x0" identifier = (binary_expression "pbVar9 + 7 == (byte *)0x0" (binary_expression "pbVar9 + 7" identifier + number_literal) == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" identifier = (binary_expression "pbVar9 + 7" identifier + number_literal)) ;) (expression_statement "pbVar21 = (byte *)0x1663a6;" (assignment_expression "pbVar21 = (byte *)0x1663a6" identifier = (cast_expression "(byte *)0x1663a6" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);" do (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;" if (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" ( (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b36f;" goto statement_identifier ;)) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;) })) (labeled_statement "LAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;" statement_identifier : (expression_statement "bVar25 = DAT_00196f74 == 0;" (assignment_expression "bVar25 = DAT_00196f74 == 0" identifier = (binary_expression "DAT_00196f74 == 0" identifier == number_literal)) ;)) (if_statement "if (bVar25) goto LAB_0012ad90;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) (goto_statement "goto LAB_0012c536;" goto statement_identifier ;) })) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;) (expression_statement "bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;" (assignment_expression "bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0" identifier = (binary_expression "DAT_00196f58 == 0 && DAT_00196f4c == 0" (binary_expression "DAT_00196f58 == 0" identifier == number_literal) && (binary_expression "DAT_00196f4c == 0" identifier == number_literal))) ;) (if_statement "if (bVar28) goto LAB_0012c5d2;" if (parenthesized_expression "(bVar28)" ( identifier )) (goto_statement "goto LAB_0012c5d2;" goto statement_identifier ;)) (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;" if (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" ( (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012c5d2;" goto statement_identifier ;)) (labeled_statement "LAB_0012b36f:\n                    bVar25 = false;" statement_identifier : (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" identifier = false) ;)) (expression_statement "bVar28 = DAT_00196f58 == 0;" (assignment_expression "bVar28 = DAT_00196f58 == 0" identifier = (binary_expression "DAT_00196f58 == 0" identifier == number_literal)) ;) (if_statement "if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }" if (parenthesized_expression "(!bVar28)" ( (unary_expression "!bVar28" ! identifier) )) (compound_statement "{\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" identifier = (binary_expression "pbVar9 + 7" identifier + number_literal)) ;) (expression_statement "pbVar21 = (byte *)0x1826c0;" (assignment_expression "pbVar21 = (byte *)0x1826c0" identifier = (cast_expression "(byte *)0x1826c0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" do (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" ( (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) })) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = DAT_00196f4c == 0;" (assignment_expression "bVar25 = DAT_00196f4c == 0" identifier = (binary_expression "DAT_00196f4c == 0" identifier == number_literal)) ;) (if_statement "if (bVar25) goto LAB_0012ad90;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "pbVar9 = pbVar9 + 7;" (assignment_expression "pbVar9 = pbVar9 + 7" identifier = (binary_expression "pbVar9 + 7" identifier + number_literal)) ;) (expression_statement "pcVar14 = (char *)(byte *)0x1826ce;" (assignment_expression "pcVar14 = (char *)(byte *)0x1826ce" identifier = (cast_expression "(char *)(byte *)0x1826ce" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(byte *)0x1826ce" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" else (compound_statement "{\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" { (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" identifier = (cast_expression "(byte *)".trace_"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".trace_"" " string_content "))) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) (labeled_statement "LAB_0012c536:\n                    bVar28 = false;" statement_identifier : (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" identifier = false) ;)) (expression_statement "lVar20 = 0xe;" (assignment_expression "lVar20 = 0xe" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".gnu_debuglink";" (assignment_expression "pbVar21 = (byte *)".gnu_debuglink"" identifier = (cast_expression "(byte *)".gnu_debuglink"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu_debuglink"" " string_content "))) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar28 = *pbVar18 < *pbVar21;" (assignment_expression "bVar28 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" identifier = (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" ( (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar25) goto LAB_0012b3c0;" if (parenthesized_expression "(bVar25)" ( identifier )) (goto_statement "goto LAB_0012b3c0;" goto statement_identifier ;)) (expression_statement "lVar20 = 0x11;" (assignment_expression "lVar20 = 0x11" identifier = number_literal) ;) (expression_statement "pcVar14 = ".gnu_debugaltlink";" (assignment_expression "pcVar14 = ".gnu_debugaltlink"" identifier = (string_literal "".gnu_debugaltlink"" " string_content ")) ;) }))) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);" do (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar9 < (byte)*pcVar14;" (assignment_expression "bVar26 = *pbVar9 < (byte)*pcVar14" identifier = (binary_expression "*pbVar9 < (byte)*pcVar14" (pointer_expression "*pbVar9" * identifier) < (binary_expression "(byte)*pcVar14" (parenthesized_expression "(byte)" ( identifier )) * identifier))) ;) (expression_statement "bVar25 = *pbVar9 == *pcVar14;" (assignment_expression "bVar25 = *pbVar9 == *pcVar14" identifier = (binary_expression "*pbVar9 == *pcVar14" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pcVar14" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);" (assignment_expression "pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" identifier = (cast_expression "(char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" ( (binary_expression "(byte *)pcVar14 + (ulong)bVar30 * -2 + 1" (binary_expression "(byte *)pcVar14 + (ulong)bVar30 * -2" (cast_expression "(byte *)pcVar14" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012ad90;" goto statement_identifier ;)) }) (else_clause "else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" else (compound_statement "{\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" { (expression_statement "lVar20 = 0xb;" (assignment_expression "lVar20 = 0xb" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".gdb_index";" (assignment_expression "pbVar21 = (byte *)".gdb_index"" identifier = (cast_expression "(byte *)".gdb_index"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gdb_index"" " string_content "))) ;) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);" do (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" identifier = false) ;) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }" if (parenthesized_expression "(!bVar25)" ( (unary_expression "!bVar25" ! identifier) )) (compound_statement "{\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }" { (expression_statement "lVar20 = 0xd;" (assignment_expression "lVar20 = 0xd" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".debug_names";" (assignment_expression "pbVar21 = (byte *)".debug_names"" identifier = (cast_expression "(byte *)".debug_names"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_names"" " string_content "))) ;) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" do (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar26 = *pbVar18 < *pbVar21;" (assignment_expression "bVar26 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar25)" ( identifier )) ;) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;" if (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" ( (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" ( (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" ! identifier) && (unary_expression "!bVar25" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b31e;" goto statement_identifier ;)) })) }))) }) (else_clause "else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" else (compound_statement "{\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" { (expression_statement "lVar20 = 0x11;" (assignment_expression "lVar20 = 0x11" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".gnu.linkonce.wi.";" (assignment_expression "pbVar21 = (byte *)".gnu.linkonce.wi."" identifier = (cast_expression "(byte *)".gnu.linkonce.wi."" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".gnu.linkonce.wi."" " string_content "))) ;) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);" do (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;" if (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" ( (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) != identifier) )) (goto_statement "goto LAB_0012b2b0;" goto statement_identifier ;)) }))) }))) (labeled_statement "LAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);" statement_identifier : (expression_statement "FUN_00111440(param_1,uVar22,4);" (call_expression "FUN_00111440(param_1,uVar22,4)" identifier (argument_list "(param_1,uVar22,4)" ( identifier , identifier , number_literal ))) ;)) }))) }) (else_clause "else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar16 == 0x12)" ( (binary_expression "uVar16 == 0x12" identifier == number_literal) )) (compound_statement "{\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }" { (expression_statement "puVar11 = (undefined8 *)FUN_001594b0();" (assignment_expression "puVar11 = (undefined8 *)FUN_001594b0()" identifier = (cast_expression "(undefined8 *)FUN_001594b0()" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_001594b0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "*puVar11 = puVar24;" (assignment_expression "*puVar11 = puVar24" (pointer_expression "*puVar11" * identifier) = identifier) ;) (expression_statement "puVar11[1] = DAT_001934b0;" (assignment_expression "puVar11[1] = DAT_001934b0" (subscript_expression "puVar11[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "DAT_001934b0 = puVar11;" (assignment_expression "DAT_001934b0 = puVar11" identifier = identifier) ;) }) (else_clause "else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar16 == 2)" ( (binary_expression "uVar16 == 2" identifier == number_literal) )) (compound_statement "{\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" { (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10" identifier = (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(DAT_0019345c == 0) & 8)" ( (binary_expression "-(uint)(DAT_0019345c == 0) & 8" (unary_expression "-(uint)(DAT_0019345c == 0)" - (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" ( (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != identifier) )) (goto_statement "goto LAB_0012b6ee;" goto statement_identifier ;)) }) (else_clause "else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar16 == 0x11)" ( (binary_expression "uVar16 == 0x11" identifier == number_literal) )) (compound_statement "{\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }" { (if_statement "if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 4)" ( (binary_expression "*(long *)(puVar24 + 0xe) != 4" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }" { (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" identifier (argument_list "((char *)local_68,"%016lx")" ( (cast_expression "(char *)local_68" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016lx"" " string_content ") ))) ;) (expression_statement "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar12,uVar22,local_68);" (call_expression "error(uVar12,uVar22,local_68)" identifier (argument_list "(uVar12,uVar22,local_68)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier = (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar12,4);" (call_expression "error(uVar12,4)" identifier (argument_list "(uVar12,4)" ( identifier , number_literal ))) ;) (expression_statement "puVar24[0xe] = 4;" (assignment_expression "puVar24[0xe] = 4" (subscript_expression "puVar24[0xe]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar24[0xf] = 0;" (assignment_expression "puVar24[0xf] = 0" (subscript_expression "puVar24[0xf]" identifier [ number_literal ]) = number_literal) ;) })) }) (else_clause "else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (if_statement "if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" if (parenthesized_expression "(uVar16 == 9)" ( (binary_expression "uVar16 == 9" identifier == number_literal) )) (compound_statement "{\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }" { (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8" identifier = (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(DAT_0019345c == 0) & 8)" ( (binary_expression "-(uint)(DAT_0019345c == 0) & 8" (unary_expression "-(uint)(DAT_0019345c == 0)" - (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" ( (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != identifier) )) (compound_statement "{\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }" { (labeled_statement "LAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");" statement_identifier : (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" identifier (argument_list "((char *)local_68,"%016lx")" ( (cast_expression "(char *)local_68" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016lx"" " string_content ") ))) ;)) (expression_statement "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier = (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" identifier (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" ( number_literal , (string_literal ""Section %d has invalid sh_entsize of %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar12,uVar22,local_68);" (call_expression "error(uVar12,uVar22,local_68)" identifier (argument_list "(uVar12,uVar22,local_68)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier = (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" identifier (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" ( number_literal , (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "error(uVar12,lVar20);" (call_expression "error(uVar12,lVar20)" identifier (argument_list "(uVar12,lVar20)" ( identifier , identifier ))) ;) (expression_statement "*(long *)(puVar24 + 0xe) = lVar20;" (assignment_expression "*(long *)(puVar24 + 0xe) = lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) = identifier) ;) })) }) (else_clause "else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" else (compound_statement "{\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" { (if_statement "if (uVar16 != 4) goto LAB_0012b1ff;" if (parenthesized_expression "(uVar16 != 4)" ( (binary_expression "uVar16 != 4" identifier != number_literal) )) (goto_statement "goto LAB_0012b1ff;" goto statement_identifier ;)) (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc" identifier = (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 0xc)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(DAT_0019345c == 0) & 0xc)" ( (binary_expression "-(uint)(DAT_0019345c == 0) & 0xc" (unary_expression "-(uint)(DAT_0019345c == 0)" - (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;" if (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" ( (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" * (cast_expression "(long *)(puVar24 + 0xe)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) != identifier) )) (goto_statement "goto LAB_0012b6ee;" goto statement_identifier ;)) }))))))))))) }))) (labeled_statement "LAB_0012ad90:\n      uVar22 = uVar22 + 1;" statement_identifier : (expression_statement "uVar22 = uVar22 + 1;" (assignment_expression "uVar22 = uVar22 + 1" identifier = (binary_expression "uVar22 + 1" identifier + number_literal)) ;)) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" identifier = (binary_expression "puVar24 + 0x14" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" ( (binary_expression "uVar22 < *(uint *)(param_1 + 100)" identifier < (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) )) ;) (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" if (parenthesized_expression "(DAT_00193494 == 0)" ( (binary_expression "DAT_00193494 == 0" identifier == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (if_statement "if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;" if (parenthesized_expression "(*(uint *)(param_1 + 100) < 2)" ( (binary_expression "*(uint *)(param_1 + 100) < 2" (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) )))) < number_literal) )) (goto_statement "goto LAB_0012c296;" goto statement_identifier ;)) (expression_statement "pcVar14 = "\nSection Headers:\n";" (assignment_expression "pcVar14 = "\nSection Headers:\n"" identifier = (string_literal ""\nSection Headers:\n"" " escape_sequence string_content escape_sequence ")) ;) })))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar14,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (if_statement "if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" if (parenthesized_expression "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )) (compound_statement "{\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }" { (if_statement "if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" if (parenthesized_expression "(DAT_00196f50 == 0)" ( (binary_expression "DAT_00196f50 == 0" identifier == number_literal) )) (compound_statement "{\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }" { (if_statement "if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }" { (expression_statement "pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" identifier (argument_list "(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" ( number_literal , (string_literal ""  [Nr] Name              Type             Address           Offset\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";" (assignment_expression "pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n"" identifier = (string_literal ""       Size              EntSize          Flags  Link  Info  Align\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" else (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" identifier (argument_list "(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" ( number_literal , (string_literal ""       Type              Address          Offset            Link\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = "       Size              EntSize          Info              Align\n";" (assignment_expression "pcVar14 = "       Size              EntSize          Info              Align\n"" identifier = (string_literal ""       Size              EntSize          Info              Align\n"" " string_content escape_sequence ")) ;) }))) }) (else_clause "else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" else (compound_statement "{\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" { (expression_statement "pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";" (assignment_expression "pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"" identifier = (string_literal ""  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"" " string_content escape_sequence ")) ;) (if_statement "if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }" if (parenthesized_expression "(DAT_0019348c != 0)" ( (binary_expression "DAT_0019348c != 0" identifier != number_literal) )) (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";" (assignment_expression "pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n"" identifier = (string_literal ""       Type            Address          Off    Size   ES   Lk Inf Al\n"" " string_content escape_sequence ")) ;) })) }))) }) (else_clause "else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" else (compound_statement "{\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" { (expression_statement "pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";" (assignment_expression "pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"" identifier = (string_literal ""  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"" " string_content escape_sequence ")) ;) (if_statement "if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }" if (parenthesized_expression "(DAT_0019348c != 0)" ( (binary_expression "DAT_0019348c != 0" identifier != number_literal) )) (compound_statement "{\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  [Nr] Name\n",5)" identifier (argument_list "(0,"  [Nr] Name\n",5)" ( number_literal , (string_literal ""  [Nr] Name\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";" (assignment_expression "pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n"" identifier = (string_literal ""       Type            Addr     Off    Size   ES   Lk Inf Al\n"" " string_content escape_sequence ")) ;) })) }))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar14,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (if_statement "if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }" { (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (if_statement "if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }" if (parenthesized_expression "(uVar22 != 0)" ( (binary_expression "uVar22 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }" { (labeled_statement "LAB_0012ae50:\n      uVar17 = 0;" statement_identifier : (expression_statement "uVar17 = 0;" (assignment_expression "uVar17 = 0" identifier = number_literal) ;)) (labeled_statement "LAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);" statement_identifier : (do_statement "do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);" do (compound_statement "{\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      }" { (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }" if (parenthesized_expression "(uVar16 < 0x11)" ( (binary_expression "uVar16 < 0x11" identifier < number_literal) )) (compound_statement "{\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }" { (if_statement "if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }" if (parenthesized_expression "(uVar16 < 0xe)" ( (binary_expression "uVar16 < 0xe" identifier < number_literal) )) (compound_statement "{\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }" { (if_statement "if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" if (parenthesized_expression "(uVar16 < 6)" ( (binary_expression "uVar16 < 6" identifier < number_literal) )) (compound_statement "{\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }" { (if_statement "if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" if (parenthesized_expression "(uVar16 < 4)" ( (binary_expression "uVar16 < 4" identifier < number_literal) )) (compound_statement "{\n                if (uVar16 == 2) goto LAB_0012b074;\n              }" { (if_statement "if (uVar16 == 2) goto LAB_0012b074;" if (parenthesized_expression "(uVar16 == 2)" ( (binary_expression "uVar16 == 2" identifier == number_literal) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" else (compound_statement "{\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" { (labeled_statement "LAB_0012bb47:\n                uVar23 = puVar24[10];" statement_identifier : (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;)) (if_statement "if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }" if (parenthesized_expression "(((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb))))" ( (binary_expression "((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))" (parenthesized_expression "((uVar23 == 0) || (uVar22 <= uVar23))" ( (binary_expression "(uVar23 == 0) || (uVar22 <= uVar23)" (parenthesized_expression "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar22 <= uVar23)" ( (binary_expression "uVar22 <= uVar23" identifier <= identifier) ))) )) || (parenthesized_expression "((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))" ( (parenthesized_expression "(iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb))" ( (comma_expression "iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)" (assignment_expression "iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" identifier = (pointer_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" * (cast_expression "(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar23 * 0x50" (cast_expression "(ulong)uVar23" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) + (pointer_expression "*(long *)(param_1 + 0x70)" * (cast_expression "(long *)(param_1 + 0x70)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) + number_literal) ))))) , (binary_expression "iVar7 != 2 && (iVar7 != 0xb)" (binary_expression "iVar7 != 2" identifier != number_literal) && (parenthesized_expression "(iVar7 != 0xb)" ( (binary_expression "iVar7 != 0xb" identifier != number_literal) )))) )) ))) )) (compound_statement "{\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }" { (expression_statement "pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";" (assignment_expression "pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n"" identifier = (string_literal ""[%2u]: Link field (%u) should index a symtab section.\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b0a7;" goto statement_identifier ;) })) }))) }) (else_clause "else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" else (compound_statement "{\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" { (if_statement "if (uVar16 == 9) goto LAB_0012bb47;" if (parenthesized_expression "(uVar16 == 9)" ( (binary_expression "uVar16 == 9" identifier == number_literal) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) (if_statement "if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;" if (parenthesized_expression "((uVar16 == 0xb) || (uVar16 == 6))" ( (binary_expression "(uVar16 == 0xb) || (uVar16 == 6)" (parenthesized_expression "(uVar16 == 0xb)" ( (binary_expression "uVar16 == 0xb" identifier == number_literal) )) || (parenthesized_expression "(uVar16 == 6)" ( (binary_expression "uVar16 == 6" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) }))) (goto_statement "goto joined_r0x0012ae86;" goto statement_identifier ;) })) (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;) (if_statement "if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }" if (parenthesized_expression "(uVar23 != 0)" ( (binary_expression "uVar23 != 0" identifier != number_literal) )) (compound_statement "{\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }" { (expression_statement "pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";" (assignment_expression "pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n"" identifier = (string_literal ""[%2u]: Unexpected value (%u) in link field.\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0012b0a7;" goto statement_identifier ;) })) (labeled_statement "LAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);" statement_identifier : (expression_statement "uVar10 = 1L << ((byte)uVar16 & 0x3f);" (assignment_expression "uVar10 = 1L << ((byte)uVar16 & 0x3f)" identifier = (binary_expression "1L << ((byte)uVar16 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar16 & 0x3f)" ( (binary_expression "(byte)uVar16 & 0x3f" (cast_expression "(byte)uVar16" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;)) (if_statement "if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;" if (parenthesized_expression "((uVar10 & 0x20804) != 0)" ( (binary_expression "(uVar10 & 0x20804) != 0" (parenthesized_expression "(uVar10 & 0x20804)" ( (binary_expression "uVar10 & 0x20804" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (if_statement "if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" if (parenthesized_expression "((uVar10 & 0x5c060) == 0)" ( (binary_expression "(uVar10 & 0x5c060) == 0" (parenthesized_expression "(uVar10 & 0x5c060)" ( (binary_expression "uVar10 & 0x5c060" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }" { (if_statement "if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }" if (parenthesized_expression "((uVar10 & 0x210) == 0)" ( (binary_expression "(uVar10 & 0x210) == 0" (parenthesized_expression "(uVar10 & 0x210)" ( (binary_expression "uVar10 & 0x210" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }" { (if_statement "if (uVar16 == 8) goto LAB_0012aef0;" if (parenthesized_expression "(uVar16 == 8)" ( (binary_expression "uVar16 == 8" identifier == number_literal) )) (goto_statement "goto LAB_0012aef0;" goto statement_identifier ;)) (expression_statement "uVar10 = *(ulong *)(puVar24 + 2);" (assignment_expression "uVar10 = *(ulong *)(puVar24 + 2)" identifier = (pointer_expression "*(ulong *)(puVar24 + 2)" * (cast_expression "(ulong *)(puVar24 + 2)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) ))))) ;) (if_statement "if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;" if (parenthesized_expression "((uVar10 & 0x40) == 0)" ( (binary_expression "(uVar10 & 0x40) == 0" (parenthesized_expression "(uVar10 & 0x40)" ( (binary_expression "uVar10 & 0x40" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012bf7c;" goto statement_identifier ;)) (goto_statement "goto LAB_0012ae98;" goto statement_identifier ;) })) (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" identifier = (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ;) (if_statement "if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" if (parenthesized_expression "(uVar22 == 0)" ( (binary_expression "uVar22 == 0" identifier == number_literal) )) (compound_statement "{\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }" { (if_statement "if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;" if (parenthesized_expression "((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2)" ( (binary_expression "(ushort)(*(short *)(param_1 + 0x50) - 2U) < 2" (call_expression "(ushort)(*(short *)(param_1 + 0x50) - 2U)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(*(short *)(param_1 + 0x50) - 2U)" ( (binary_expression "*(short *)(param_1 + 0x50) - 2U" (pointer_expression "*(short *)(param_1 + 0x50)" * (cast_expression "(short *)(param_1 + 0x50)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) - number_literal) ))) < number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "uVar10 = *(ulong *)(param_1 + 0x80);" (assignment_expression "uVar10 = *(ulong *)(param_1 + 0x80)" identifier = (pointer_expression "*(ulong *)(param_1 + 0x80)" * (cast_expression "(ulong *)(param_1 + 0x80)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) ))))) ;) (if_statement "if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" if (parenthesized_expression "(uVar10 == 0)" ( (binary_expression "uVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) (labeled_statement "LAB_0012c57f:\n                lVar20 = 9;" statement_identifier : (expression_statement "lVar20 = 9;" (assignment_expression "lVar20 = 9" identifier = number_literal) ;)) (expression_statement "pbVar18 = (byte *)".rel.dyn";" (assignment_expression "pbVar18 = (byte *)".rel.dyn"" identifier = (cast_expression "(byte *)".rel.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rel.dyn"" " string_content "))) ;) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);" do (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "uVar27 = *pbVar9 < *pbVar18;" (assignment_expression "uVar27 = *pbVar9 < *pbVar18" identifier = (binary_expression "*pbVar9 < *pbVar18" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar18" * identifier))) ;) (expression_statement "uVar29 = *pbVar9 == *pbVar18;" (assignment_expression "uVar29 = *pbVar9 == *pbVar18" identifier = (binary_expression "*pbVar9 == *pbVar18" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar18" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "((bool)uVar29)" ( (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (if_statement "if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;" if (parenthesized_expression "((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27)" ( (binary_expression "(!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27" (parenthesized_expression "(!(bool)uVar27 && !(bool)uVar29)" ( (binary_expression "!(bool)uVar27 && !(bool)uVar29" (unary_expression "!(bool)uVar27" ! (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar29" ! (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "uVar10 = *(ulong *)(param_1 + 0x80);" (assignment_expression "uVar10 = *(ulong *)(param_1 + 0x80)" identifier = (pointer_expression "*(ulong *)(param_1 + 0x80)" * (cast_expression "(ulong *)(param_1 + 0x80)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) ))))) ;) (if_statement "if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" if (parenthesized_expression "(uVar10 == 0)" ( (binary_expression "uVar10 == 0" identifier == number_literal) )) (compound_statement "{\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal ))))) ;) }) (else_clause "else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" else (compound_statement "{\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" { (expression_statement "uVar15 = (ulong)*puVar24;" (assignment_expression "uVar15 = (ulong)*puVar24" identifier = (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) ;) (if_statement "if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" if (parenthesized_expression "(uVar15 < *(ulong *)(param_1 + 0x88))" ( (binary_expression "uVar15 < *(ulong *)(param_1 + 0x88)" identifier < (pointer_expression "*(ulong *)(param_1 + 0x88)" * (cast_expression "(ulong *)(param_1 + 0x88)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) ))))) )) (compound_statement "{\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }" { (expression_statement "uVar27 = CARRY8(uVar10,uVar15);" (assignment_expression "uVar27 = CARRY8(uVar10,uVar15)" identifier = (call_expression "CARRY8(uVar10,uVar15)" identifier (argument_list "(uVar10,uVar15)" ( identifier , identifier )))) ;) (expression_statement "pbVar9 = (byte *)(uVar10 + uVar15);" (assignment_expression "pbVar9 = (byte *)(uVar10 + uVar15)" identifier = (cast_expression "(byte *)(uVar10 + uVar15)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar10 + uVar15)" ( (binary_expression "uVar10 + uVar15" identifier + identifier) )))) ;) (expression_statement "uVar29 = pbVar9 == (byte *)0x0;" (assignment_expression "uVar29 = pbVar9 == (byte *)0x0" identifier = (binary_expression "pbVar9 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) }) (else_clause "else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" else (compound_statement "{\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) }))) }))) }) (else_clause "else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" else (compound_statement "{\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" { (expression_statement "uVar15 = (ulong)*puVar24;" (assignment_expression "uVar15 = (ulong)*puVar24" identifier = (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) ;) (if_statement "if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }" if (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= uVar15)" ( (binary_expression "*(ulong *)(param_1 + 0x88) <= uVar15" (pointer_expression "*(ulong *)(param_1 + 0x88)" * (cast_expression "(ulong *)(param_1 + 0x88)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) <= identifier) )) (compound_statement "{\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }" { (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" identifier = (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal ))))) ;) (goto_statement "goto LAB_0012c57f;" goto statement_identifier ;) })) (expression_statement "bVar25 = CARRY8(uVar10,uVar15);" (assignment_expression "bVar25 = CARRY8(uVar10,uVar15)" identifier = (call_expression "CARRY8(uVar10,uVar15)" identifier (argument_list "(uVar10,uVar15)" ( identifier , identifier )))) ;) (expression_statement "pbVar9 = (byte *)(uVar10 + uVar15);" (assignment_expression "pbVar9 = (byte *)(uVar10 + uVar15)" identifier = (cast_expression "(byte *)(uVar10 + uVar15)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar10 + uVar15)" ( (binary_expression "uVar10 + uVar15" identifier + identifier) )))) ;) (expression_statement "bVar28 = pbVar9 == (byte *)0x0;" (assignment_expression "bVar28 = pbVar9 == (byte *)0x0" identifier = (binary_expression "pbVar9 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (expression_statement "lVar20 = 9;" (assignment_expression "lVar20 = 9" identifier = number_literal) ;) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" identifier = identifier) ;) (expression_statement "pbVar21 = (byte *)".rel.dyn";" (assignment_expression "pbVar21 = (byte *)".rel.dyn"" identifier = (cast_expression "(byte *)".rel.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rel.dyn"" " string_content "))) ;) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);" do (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" identifier = (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" * identifier) < (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" identifier = (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" * identifier) == (pointer_expression "*pbVar21" * identifier))) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar28)" ( identifier )) ;) (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" identifier = number_literal) ;) (expression_statement "uVar29 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "uVar29 = (!bVar25 && !bVar28) == bVar25" identifier = (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" ( (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" ! identifier) && (unary_expression "!bVar28" ! identifier)) )) == identifier)) ;) (if_statement "if ((bool)uVar29) goto LAB_0012aec8;" if (parenthesized_expression "((bool)uVar29)" ( (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) }))) (expression_statement "lVar20 = 10;" (assignment_expression "lVar20 = 10" identifier = number_literal) ;) (expression_statement "pbVar18 = (byte *)".rela.dyn";" (assignment_expression "pbVar18 = (byte *)".rela.dyn"" identifier = (cast_expression "(byte *)".rela.dyn"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".rela.dyn"" " string_content "))) ;) (do_statement "do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);" do (compound_statement "{\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              }" { (if_statement "if (lVar20 == 0) break;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" identifier = (binary_expression "lVar20 + -1" identifier + number_literal)) ;) (expression_statement "uVar27 = *pbVar9 < *pbVar18;" (assignment_expression "uVar27 = *pbVar9 < *pbVar18" identifier = (binary_expression "*pbVar9 < *pbVar18" (pointer_expression "*pbVar9" * identifier) < (pointer_expression "*pbVar18" * identifier))) ;) (expression_statement "uVar29 = *pbVar9 == *pbVar18;" (assignment_expression "uVar29 = *pbVar9 == *pbVar18" identifier = (binary_expression "*pbVar9 == *pbVar18" (pointer_expression "*pbVar9" * identifier) == (pointer_expression "*pbVar18" * identifier))) ;) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" identifier = (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" identifier + (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "((bool)uVar29)" ( (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (if_statement "if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;" if (parenthesized_expression "((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27)" ( (binary_expression "(!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27" (parenthesized_expression "(!(bool)uVar27 && !(bool)uVar29)" ( (binary_expression "!(bool)uVar27 && !(bool)uVar29" (unary_expression "!(bool)uVar27" ! (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar29" ! (cast_expression "(bool)uVar29" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" identifier = (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ;) }) (else_clause "else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" else (if_statement "if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" if (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" ( (binary_expression "uVar22 < *(uint *)(param_1 + 100)" identifier < (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) )) (compound_statement "{\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" { (expression_statement "uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);" (assignment_expression "uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" identifier = (pointer_expression "*(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" * (cast_expression "(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (binary_expression "(ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar22 * 0x50" (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) + (pointer_expression "*(long *)(param_1 + 0x70)" * (cast_expression "(long *)(param_1 + 0x70)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) + number_literal) ))))) ;) (expression_statement "bVar5 = 1;" (assignment_expression "bVar5 = 1" identifier = number_literal) ;) (if_statement "if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }" if (parenthesized_expression "(uVar16 < 0xf)" ( (binary_expression "uVar16 < 0xf" identifier < number_literal) )) (compound_statement "{\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }" { (expression_statement "bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;" (assignment_expression "bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1" identifier = (binary_expression "~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1" (unary_expression "~(byte)(0x4182L >> ((byte)uVar16 & 0x3f))" ~ (call_expression "(byte)(0x4182L >> ((byte)uVar16 & 0x3f))" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(0x4182L >> ((byte)uVar16 & 0x3f))" ( (binary_expression "0x4182L >> ((byte)uVar16 & 0x3f)" number_literal >> (parenthesized_expression "((byte)uVar16 & 0x3f)" ( (binary_expression "(byte)uVar16 & 0x3f" (cast_expression "(byte)uVar16" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) )))) & number_literal)) ;) })) (if_statement "if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;" if (parenthesized_expression "((0x5fffffff < uVar16) || (bVar5 == 0))" ( (binary_expression "(0x5fffffff < uVar16) || (bVar5 == 0)" (parenthesized_expression "(0x5fffffff < uVar16)" ( (binary_expression "0x5fffffff < uVar16" number_literal < identifier) )) || (parenthesized_expression "(bVar5 == 0)" ( (binary_expression "bVar5 == 0" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) })))) (expression_statement "pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";" (assignment_expression "pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n"" identifier = (string_literal ""[%2u]: Info field (%u) should index a relocatable section.\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" else (compound_statement "{\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" { (labeled_statement "LAB_0012bf87:\n            uVar22 = puVar24[0xb];" statement_identifier : (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" identifier = (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ;)) (if_statement "if (uVar22 == 0) goto LAB_0012aec8;" if (parenthesized_expression "(uVar22 == 0)" ( (binary_expression "uVar22 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;)) (expression_statement "pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";" (assignment_expression "pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n"" identifier = (string_literal ""[%2u]: Unexpected value (%u) in info field.\n"" " string_content escape_sequence ")) ;) }))) (expression_statement "uVar12 = dcgettext(0,pcVar14,5);" (assignment_expression "uVar12 = dcgettext(0,pcVar14,5)" identifier = (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal )))) ;) (expression_statement "warn(uVar12,uVar17,uVar22);" (call_expression "warn(uVar12,uVar17,uVar22)" identifier (argument_list "(uVar12,uVar17,uVar22)" ( identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;) })) (if_statement "if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(uVar16 == 0x6ffffff7)" ( (binary_expression "uVar16 == 0x6ffffff7" identifier == number_literal) )) (compound_statement "{\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }" { (labeled_statement "LAB_0012b074:\n          uVar23 = puVar24[10];" statement_identifier : (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;)) (if_statement "if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }" if (parenthesized_expression "(((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3))" ( (binary_expression "((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)" (parenthesized_expression "((uVar23 == 0) || (uVar22 <= uVar23))" ( (binary_expression "(uVar23 == 0) || (uVar22 <= uVar23)" (parenthesized_expression "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar22 <= uVar23)" ( (binary_expression "uVar22 <= uVar23" identifier <= identifier) ))) )) || (parenthesized_expression "(*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)" ( (binary_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3" (pointer_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" * (cast_expression "(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" ( (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar23 * 0x50" (cast_expression "(ulong)uVar23" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) + (pointer_expression "*(long *)(param_1 + 0x70)" * (cast_expression "(long *)(param_1 + 0x70)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }" { (expression_statement "pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";" (assignment_expression "pcVar14 = "[%2u]: Link field (%u) should index a string section.\n"" identifier = (string_literal ""[%2u]: Link field (%u) should index a string section.\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);" statement_identifier : (expression_statement "uVar12 = dcgettext(0,pcVar14,5);" (assignment_expression "uVar12 = dcgettext(0,pcVar14,5)" identifier = (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "warn(uVar12,uVar17,uVar23);" (call_expression "warn(uVar12,uVar17,uVar23)" identifier (argument_list "(uVar12,uVar17,uVar23)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" identifier = (subscript_expression "puVar24[1]" identifier [ number_literal ])) ;) })) }) (else_clause "else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" else (if_statement "if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(uVar16 < 0x6ffffff8)" ( (binary_expression "uVar16 < 0x6ffffff8" identifier < number_literal) )) (compound_statement "{\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }" { (if_statement "if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;" if (parenthesized_expression "((uVar16 < 0x13) || (uVar16 == 0x6ffffff6))" ( (binary_expression "(uVar16 < 0x13) || (uVar16 == 0x6ffffff6)" (parenthesized_expression "(uVar16 < 0x13)" ( (binary_expression "uVar16 < 0x13" identifier < number_literal) )) || (parenthesized_expression "(uVar16 == 0x6ffffff6)" ( (binary_expression "uVar16 == 0x6ffffff6" identifier == number_literal) ))) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) }) (else_clause "else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" else (if_statement "if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" if (parenthesized_expression "(0x6ffffffc < uVar16)" ( (binary_expression "0x6ffffffc < uVar16" number_literal < identifier) )) (compound_statement "{\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" { (if_statement "if (uVar16 < 0x6fffffff) goto LAB_0012b074;" if (parenthesized_expression "(uVar16 < 0x6fffffff)" ( (binary_expression "uVar16 < 0x6fffffff" identifier < number_literal) )) (goto_statement "goto LAB_0012b074;" goto statement_identifier ;)) (if_statement "if (uVar16 == 0x6fffffff) goto LAB_0012bb47;" if (parenthesized_expression "(uVar16 == 0x6fffffff)" ( (binary_expression "uVar16 == 0x6fffffff" identifier == number_literal) )) (goto_statement "goto LAB_0012bb47;" goto statement_identifier ;)) })))))) (labeled_statement "joined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;" statement_identifier : (if_statement "if (uVar16 < 0x13) goto LAB_0012b0ca;" if (parenthesized_expression "(uVar16 < 0x13)" ( (binary_expression "uVar16 < 0x13" identifier < number_literal) )) (goto_statement "goto LAB_0012b0ca;" goto statement_identifier ;))) (expression_statement "uVar10 = *(ulong *)(puVar24 + 2);" (assignment_expression "uVar10 = *(ulong *)(puVar24 + 2)" identifier = (pointer_expression "*(ulong *)(puVar24 + 2)" * (cast_expression "(ulong *)(puVar24 + 2)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) ))))) ;) (if_statement "if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" if (parenthesized_expression "((uVar10 & 0x40) == 0)" ( (binary_expression "(uVar10 & 0x40) == 0" (parenthesized_expression "(uVar10 & 0x40)" ( (binary_expression "uVar10 & 0x40" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }" { (if_statement "if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }" if (parenthesized_expression "(uVar16 < 0x60000000)" ( (binary_expression "uVar16 < 0x60000000" identifier < number_literal) )) (compound_statement "{\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }" { (labeled_statement "LAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;" statement_identifier : (if_statement "if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;" if (parenthesized_expression "((uVar10 & 0x1000000) == 0)" ( (binary_expression "(uVar10 & 0x1000000) == 0" (parenthesized_expression "(uVar10 & 0x1000000)" ( (binary_expression "uVar10 & 0x1000000" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012bf87;" goto statement_identifier ;))) (goto_statement "goto LAB_0012aec8;" goto statement_identifier ;) })) }) (else_clause "else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" else (compound_statement "{\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" { (labeled_statement "LAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" statement_identifier : (if_statement "if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" if (parenthesized_expression "((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb]))" ( (binary_expression "(puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])" (parenthesized_expression "(puVar24[0xb] == 0)" ( (binary_expression "puVar24[0xb] == 0" (subscript_expression "puVar24[0xb]" identifier [ number_literal ]) == number_literal) )) || (parenthesized_expression "(*(uint *)(param_1 + 100) <= puVar24[0xb])" ( (binary_expression "*(uint *)(param_1 + 100) <= puVar24[0xb]" (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) )))) <= (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ))) )) (compound_statement "{\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" { (expression_statement "uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);" (assignment_expression "uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5)" identifier = (call_expression "dcgettext(0,"[%2u]: Expected link to another section in info field",5)" identifier (argument_list "(0,"[%2u]: Expected link to another section in info field",5)" ( number_literal , (string_literal ""[%2u]: Expected link to another section in info field"" " string_content ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar17);" (call_expression "warn(uVar12,uVar17)" identifier (argument_list "(uVar12,uVar17)" ( identifier , identifier ))) ;) }))) (labeled_statement "LAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" statement_identifier : (if_statement "if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" if (parenthesized_expression "(((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8))" ( (binary_expression "((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)" (parenthesized_expression "((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff))" ( (binary_expression "(*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)" (parenthesized_expression "(*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8))" ( (binary_expression "*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)" (pointer_expression "*(ulong *)(param_1 + 0x10)" * (cast_expression "(ulong *)(param_1 + 0x10)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) < (pointer_expression "*(ulong *)(puVar24 + 8)" * (cast_expression "(ulong *)(puVar24 + 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) ))))) )) && (parenthesized_expression "(puVar24[1] - 1 < 0x5fffffff)" ( (binary_expression "puVar24[1] - 1 < 0x5fffffff" (binary_expression "puVar24[1] - 1" (subscript_expression "puVar24[1]" identifier [ number_literal ]) - number_literal) < number_literal) ))) )) && (parenthesized_expression "(puVar24[1] != 8)" ( (binary_expression "puVar24[1] != 8" (subscript_expression "puVar24[1]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" { (expression_statement "uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" identifier = (call_expression "dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" identifier (argument_list "(0,"Size of section %u is larger than the entire file!\n",5)" ( number_literal , (string_literal ""Size of section %u is larger than the entire file!\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar17);" (call_expression "warn(uVar12,uVar17)" identifier (argument_list "(uVar12,uVar17)" ( identifier , identifier ))) ;) }))) }))) (labeled_statement "LAB_0012aef0:\n        printf("  [%2u] ",uVar17);" statement_identifier : (expression_statement "printf("  [%2u] ",uVar17);" (call_expression "printf("  [%2u] ",uVar17)" identifier (argument_list "("  [%2u] ",uVar17)" ( (string_literal ""  [%2u] "" " string_content ") , identifier ))) ;)) (if_statement "if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }" { (if_statement "if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" if (parenthesized_expression "(*(long *)(param_1 + 0x80) == 0)" ( (binary_expression "*(long *)(param_1 + 0x80) == 0" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }" { (expression_statement "lVar20 = dcgettext(0,"<no-strings>",5);" (assignment_expression "lVar20 = dcgettext(0,"<no-strings>",5)" identifier = (call_expression "dcgettext(0,"<no-strings>",5)" identifier (argument_list "(0,"<no-strings>",5)" ( number_literal , (string_literal ""<no-strings>"" " string_content ") , number_literal )))) ;) }) (else_clause "else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" else (compound_statement "{\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" { (expression_statement "lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;" (assignment_expression "lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24" identifier = (binary_expression "*(long *)(param_1 + 0x80) + (ulong)*puVar24" (pointer_expression "*(long *)(param_1 + 0x80)" * (cast_expression "(long *)(param_1 + 0x80)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) + (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier))) ;) (if_statement "if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }" if (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24)" ( (binary_expression "*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24" (pointer_expression "*(ulong *)(param_1 + 0x88)" * (cast_expression "(ulong *)(param_1 + 0x88)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) <= (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" ( identifier )) * identifier)) )) (compound_statement "{\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }" { (expression_statement "lVar20 = dcgettext(0,"<corrupt>",5);" (assignment_expression "lVar20 = dcgettext(0,"<corrupt>",5)" identifier = (call_expression "dcgettext(0,"<corrupt>",5)" identifier (argument_list "(0,"<corrupt>",5)" ( number_literal , (string_literal ""<corrupt>"" " string_content ") , number_literal )))) ;) })) }))) (expression_statement "FUN_001122a0(0xffffffef,lVar20);" (call_expression "FUN_001122a0(0xffffffef,lVar20)" identifier (argument_list "(0xffffffef,lVar20)" ( number_literal , identifier ))) ;) }) (else_clause "else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" else (compound_statement "{\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" { (expression_statement "uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);" (assignment_expression "uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24)" identifier = (call_expression "FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24)" identifier (argument_list "(param_1 + 0x80,param_1 + 0x88,puVar24)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) , (binary_expression "param_1 + 0x88" identifier + number_literal) , identifier )))) ;) (expression_statement "printf("%s\n      ",uVar12);" (call_expression "printf("%s\n      ",uVar12)" identifier (argument_list "("%s\n      ",uVar12)" ( (string_literal ""%s\n      "" " string_content escape_sequence string_content ") , identifier ))) ;) }))) (expression_statement "uVar12 = FUN_001176d0(param_1,puVar24[1]);" (assignment_expression "uVar12 = FUN_001176d0(param_1,puVar24[1])" identifier = (call_expression "FUN_001176d0(param_1,puVar24[1])" identifier (argument_list "(param_1,puVar24[1])" ( identifier , (subscript_expression "puVar24[1]" identifier [ number_literal ]) )))) ;) (expression_statement "pcVar14 = " %-15.15s ";" (assignment_expression "pcVar14 = " %-15.15s "" identifier = (string_literal "" %-15.15s "" " string_content ")) ;) (if_statement "if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }" if (parenthesized_expression "(DAT_00196f50 != 0)" ( (binary_expression "DAT_00196f50 != 0" identifier != number_literal) )) (compound_statement "{\n          pcVar14 = " %-15s ";\n        }" { (expression_statement "pcVar14 = " %-15s ";" (assignment_expression "pcVar14 = " %-15s "" identifier = (string_literal "" %-15s "" " string_content ")) ;) })) (expression_statement "printf(pcVar14,uVar12);" (call_expression "printf(pcVar14,uVar12)" identifier (argument_list "(pcVar14,uVar12)" ( identifier , identifier ))) ;) (if_statement "if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" if (parenthesized_expression "(DAT_0019345c == 0)" ( (binary_expression "DAT_0019345c == 0" identifier == number_literal) )) (compound_statement "{\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }" { (if_statement "if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" if (parenthesized_expression "(DAT_00196f50 == 0)" ( (binary_expression "DAT_00196f50 == 0" identifier == number_literal) )) (compound_statement "{\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }" { (if_statement "if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }" { (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 4),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 4)" * (cast_expression "(undefined8 *)(puVar24 + 4)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 4)" ( (binary_expression "puVar24 + 4" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf("  %8.8lx",*(undefined8 *)(puVar24 + 6))" identifier (argument_list "("  %8.8lx",*(undefined8 *)(puVar24 + 6))" ( (string_literal ""  %8.8lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) ))) ;) (expression_statement "printf("\n       ");" (call_expression "printf("\n       ")" identifier (argument_list "("\n       ")" ( (string_literal ""\n       "" " escape_sequence string_content ") ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 8),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf("  ");" (call_expression "printf("  ")" identifier (argument_list "("  ")" ( (string_literal ""  "" " string_content ") ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 0xe),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier = (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" ( (binary_expression "param_1 + 0x1f" identifier + number_literal) , (binary_expression "param_1 + 0x52" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 2)" * (cast_expression "(undefined8 *)(puVar24 + 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) )))) )))) ;) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" identifier (argument_list "(" %3s ",uVar12)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) (expression_statement "printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""     %2u   %3u     %lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[10]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[10]" identifier [ number_literal ])) , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" else (compound_statement "{\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" { (expression_statement "uVar12 = FUN_001176d0(param_1,puVar24[1]);" (assignment_expression "uVar12 = FUN_001176d0(param_1,puVar24[1])" identifier = (call_expression "FUN_001176d0(param_1,puVar24[1])" identifier (argument_list "(param_1,puVar24[1])" ( identifier , (subscript_expression "puVar24[1]" identifier [ number_literal ]) )))) ;) (expression_statement "printf("       %-15.15s  ",uVar12);" (call_expression "printf("       %-15.15s  ",uVar12)" identifier (argument_list "("       %-15.15s  ",uVar12)" ( (string_literal ""       %-15.15s  "" " string_content ") , identifier ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 4),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 4)" * (cast_expression "(undefined8 *)(puVar24 + 4)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 4)" ( (binary_expression "puVar24 + 4" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf("  %16.16lx",*(undefined8 *)(puVar24 + 6))" identifier (argument_list "("  %16.16lx",*(undefined8 *)(puVar24 + 6))" ( (string_literal ""  %16.16lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) ))) ;) (expression_statement "printf("  %u\n       ",(ulong)puVar24[10]);" (call_expression "printf("  %u\n       ",(ulong)puVar24[10])" identifier (argument_list "("  %u\n       ",(ulong)puVar24[10])" ( (string_literal ""  %u\n       "" " string_content escape_sequence string_content ") , (cast_expression "(ulong)puVar24[10]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[10]" identifier [ number_literal ])) ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 8),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 0xe),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""  %-16u  %lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }))) }) (else_clause "else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" else (compound_statement "{\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" { (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 4),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 4)" * (cast_expression "(undefined8 *)(puVar24 + 4)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 4)" ( (binary_expression "puVar24 + 4" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf(" %6.6lx",*(undefined8 *)(puVar24 + 6))" identifier (argument_list "(" %6.6lx",*(undefined8 *)(puVar24 + 6))" ( (string_literal "" %6.6lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) ))) ;) (expression_statement "printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));" (call_expression "printf(" %6.6lx",*(undefined8 *)(puVar24 + 8))" identifier (argument_list "(" %6.6lx",*(undefined8 *)(puVar24 + 8))" ( (string_literal "" %6.6lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) ))) ;) (expression_statement "printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));" (call_expression "printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe))" identifier (argument_list "(" %2.2lx",*(undefined8 *)(puVar24 + 0xe))" ( (string_literal "" %2.2lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) ))) ;) (if_statement "if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }" { (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier = (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" ( (binary_expression "param_1 + 0x1f" identifier + number_literal) , (binary_expression "param_1 + 0x52" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 2)" * (cast_expression "(undefined8 *)(puVar24 + 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) )))) )))) ;) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" identifier (argument_list "(" %3s ",uVar12)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) }) (else_clause "else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" else (compound_statement "{\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" { (expression_statement "fwrite(&DAT_0016a396,1,2,stdout);" (call_expression "fwrite(&DAT_0016a396,1,2,stdout)" identifier (argument_list "(&DAT_0016a396,1,2,stdout)" ( (pointer_expression "&DAT_0016a396" & identifier) , number_literal , number_literal , identifier ))) ;) }))) (expression_statement "printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);" (call_expression "printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb])" identifier (argument_list "("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb])" ( (string_literal ""%2u %3u "" " string_content ") , (cast_expression "(ulong)puVar24[10]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[10]" identifier [ number_literal ])) , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) ))) ;) (expression_statement "printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%2lu\n",*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%2lu\n"" " string_content escape_sequence ") , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }))) }) (else_clause "else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" else (compound_statement "{\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" { (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" identifier (argument_list "(*(undefined8 *)(puVar24 + 4),6)" ( (pointer_expression "*(undefined8 *)(puVar24 + 4)" * (cast_expression "(undefined8 *)(puVar24 + 4)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 4)" ( (binary_expression "puVar24 + 4" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));" (call_expression "printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe))" identifier (argument_list "(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe))" ( (string_literal "" %6.6lx %6.6lx %2.2lx"" " string_content ") , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) , (pointer_expression "*(undefined8 *)(puVar24 + 8)" * (cast_expression "(undefined8 *)(puVar24 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 8)" ( (binary_expression "puVar24 + 8" identifier + number_literal) )))) , (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" * (cast_expression "(undefined8 *)(puVar24 + 0xe)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xe)" ( (binary_expression "puVar24 + 0xe" identifier + number_literal) )))) ))) ;) (if_statement "if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }" { (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier = (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" ( (binary_expression "param_1 + 0x1f" identifier + number_literal) , (binary_expression "param_1 + 0x52" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 2)" * (cast_expression "(undefined8 *)(puVar24 + 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) )))) )))) ;) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" identifier (argument_list "(" %3s ",uVar12)" ( (string_literal "" %3s "" " string_content ") , identifier ))) ;) }) (else_clause "else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" else (compound_statement "{\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" { (expression_statement "fwrite(&DAT_0016a396,1,2,stdout);" (call_expression "fwrite(&DAT_0016a396,1,2,stdout)" identifier (argument_list "(&DAT_0016a396,1,2,stdout)" ( (pointer_expression "&DAT_0016a396" & identifier) , number_literal , number_literal , identifier ))) ;) }))) (expression_statement "uVar22 = puVar24[10];" (assignment_expression "uVar22 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;) (if_statement "if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" if (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" ( (binary_expression "uVar22 < *(uint *)(param_1 + 100)" identifier < (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) )) (compound_statement "{\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }" { (if_statement "if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }" { (expression_statement "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%2u %3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" else (compound_statement "{\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" { (expression_statement "printf("%2u ");" (call_expression "printf("%2u ")" identifier (argument_list "("%2u ")" ( (string_literal ""%2u "" " string_content ") ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }))) }) (else_clause "else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" else (compound_statement "{\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" { (expression_statement "uVar6 = *(ushort *)(param_1 + 0x52);" (assignment_expression "uVar6 = *(ushort *)(param_1 + 0x52)" identifier = (pointer_expression "*(ushort *)(param_1 + 0x52)" * (cast_expression "(ushort *)(param_1 + 0x52)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x52)" ( (binary_expression "param_1 + 0x52" identifier + number_literal) ))))) ;) (if_statement "if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" if (parenthesized_expression "(uVar6 == 0x12)" ( (binary_expression "uVar6 == 0x12" identifier == number_literal) )) (compound_statement "{\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" { (labeled_statement "LAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" statement_identifier : (if_statement "if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" if (parenthesized_expression "(uVar22 == 0xff00)" ( (binary_expression "uVar22 == 0xff00" identifier == number_literal) )) (compound_statement "{\n                pcVar14 = "BEFORE";\n              }" { (expression_statement "pcVar14 = "BEFORE";" (assignment_expression "pcVar14 = "BEFORE"" identifier = (string_literal ""BEFORE"" " string_content ")) ;) }) (else_clause "else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" else (compound_statement "{\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" { (if_statement "if (uVar22 != 0xff01) goto LAB_0012c012;" if (parenthesized_expression "(uVar22 != 0xff01)" ( (binary_expression "uVar22 != 0xff01" identifier != number_literal) )) (goto_statement "goto LAB_0012c012;" goto statement_identifier ;)) (expression_statement "pcVar14 = "AFTER";" (assignment_expression "pcVar14 = "AFTER"" identifier = (string_literal ""AFTER"" " string_content ")) ;) })))) (if_statement "if (DAT_0019348c == 0) goto LAB_0012c248;" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012c248;" goto statement_identifier ;)) (expression_statement "printf("<%s> ",pcVar14);" (call_expression "printf("<%s> ",pcVar14)" identifier (argument_list "("<%s> ",pcVar14)" ( (string_literal ""<%s> "" " string_content ") , identifier ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" else (compound_statement "{\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" { (if_statement "if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }" if (parenthesized_expression "(0x12 < uVar6)" ( (binary_expression "0x12 < uVar6" number_literal < identifier) )) (compound_statement "{\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }" { (if_statement "if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }" if (parenthesized_expression "(uVar6 != 0x3e)" ( (binary_expression "uVar6 != 0x3e" identifier != number_literal) )) (compound_statement "{\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }" { (if_statement "if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }" if (parenthesized_expression "(0x3e < uVar6)" ( (binary_expression "0x3e < uVar6" number_literal < identifier) )) (compound_statement "{\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }" { (expression_statement "uVar6 = uVar6 - 0xb4;" (assignment_expression "uVar6 = uVar6 - 0xb4" identifier = (binary_expression "uVar6 - 0xb4" identifier - number_literal)) ;) (goto_statement "goto joined_r0x0012c138;" goto statement_identifier ;) })) (if_statement "if (uVar6 != 0x2b) goto LAB_0012c012;" if (parenthesized_expression "(uVar6 != 0x2b)" ( (binary_expression "uVar6 != 0x2b" identifier != number_literal) )) (goto_statement "goto LAB_0012c012;" goto statement_identifier ;)) })) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;) })) (if_statement "if (uVar6 == 6) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar6 == 6)" ( (binary_expression "uVar6 == 6" identifier == number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;)) (if_statement "if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar6 < 7)" ( (binary_expression "uVar6 < 7" identifier < number_literal) )) (compound_statement "{\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }" { (expression_statement "uVar6 = uVar6 - 2;" (assignment_expression "uVar6 = uVar6 - 2" identifier = (binary_expression "uVar6 - 2" identifier - number_literal)) ;) (labeled_statement "joined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;" statement_identifier : (if_statement "if (uVar6 < 2) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar6 < 2)" ( (binary_expression "uVar6 < 2" identifier < number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;))) }) (else_clause "else if (uVar6 == 0xb) goto LAB_0012c0c0;" else (if_statement "if (uVar6 == 0xb) goto LAB_0012c0c0;" if (parenthesized_expression "(uVar6 == 0xb)" ( (binary_expression "uVar6 == 0xb" identifier == number_literal) )) (goto_statement "goto LAB_0012c0c0;" goto statement_identifier ;)))) (labeled_statement "LAB_0012c012:\n              pcVar14 = "";" statement_identifier : (expression_statement "pcVar14 = "";" (assignment_expression "pcVar14 = """ identifier = (string_literal """" " ")) ;)) (if_statement "if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }" { (labeled_statement "LAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));" statement_identifier : (expression_statement "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%2u %3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;)) }) (else_clause "else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" else (compound_statement "{\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" { (expression_statement "pcVar14 = "";" (assignment_expression "pcVar14 = """ identifier = (string_literal """" " ")) ;) (expression_statement "printf("%2u ");" (call_expression "printf("%2u ")" identifier (argument_list "("%2u ")" ( (string_literal ""%2u "" " string_content ") ))) ;) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" identifier (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" ( (string_literal ""%3u %2lu\n"" " string_content escape_sequence ") , (cast_expression "(ulong)puVar24[0xb]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "puVar24[0xb]" identifier [ number_literal ])) , (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" * (cast_expression "(undefined8 *)(puVar24 + 0xc)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 0xc)" ( (binary_expression "puVar24 + 0xc" identifier + number_literal) )))) ))) ;) }))) }))) (if_statement "if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }" if (parenthesized_expression "(*pcVar14 == '\0')" ( (binary_expression "*pcVar14 == '\0'" (pointer_expression "*pcVar14" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }" { (expression_statement "uVar22 = puVar24[10];" (assignment_expression "uVar22 = puVar24[10]" identifier = (subscript_expression "puVar24[10]" identifier [ number_literal ])) ;) (expression_statement "uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" identifier = (call_expression "dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" identifier (argument_list "(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" ( number_literal , (string_literal ""section %u: sh_link value of %u is larger than the number of sections\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar17,uVar22);" (call_expression "warn(uVar12,uVar17,uVar22)" identifier (argument_list "(uVar12,uVar17,uVar22)" ( identifier , identifier , identifier ))) ;) })) }))) }))) (if_statement "if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }" if (parenthesized_expression "(DAT_0019348c == 0)" ( (binary_expression "DAT_0019348c == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }" { (labeled_statement "LAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);" statement_identifier : (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;)) (expression_statement "uVar16 = (int)uVar17 + 1;" (assignment_expression "uVar16 = (int)uVar17 + 1" identifier = (binary_expression "(int)uVar17 + 1" (cast_expression "(int)uVar17" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar17 = (ulong)uVar16;" (assignment_expression "uVar17 = (ulong)uVar16" identifier = (cast_expression "(ulong)uVar16" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" identifier = (binary_expression "puVar24 + 0x14" identifier + number_literal)) ;) (if_statement "if (uVar22 <= uVar16) break;" if (parenthesized_expression "(uVar22 <= uVar16)" ( (binary_expression "uVar22 <= uVar16" identifier <= identifier) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_0012b043;" goto statement_identifier ;) })) (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier = (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" identifier (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" ( (binary_expression "param_1 + 0x1f" identifier + number_literal) , (binary_expression "param_1 + 0x52" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 2)" * (cast_expression "(undefined8 *)(puVar24 + 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 2)" ( (binary_expression "puVar24 + 2" identifier + number_literal) )))) )))) ;) (expression_statement "printf("       %s\n",uVar12);" (call_expression "printf("       %s\n",uVar12)" identifier (argument_list "("       %s\n",uVar12)" ( (string_literal ""       %s\n"" " string_content escape_sequence ") , identifier ))) ;) (if_statement "if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;" if (parenthesized_expression "((*(byte *)((long)puVar24 + 9) & 8) == 0)" ( (binary_expression "(*(byte *)((long)puVar24 + 9) & 8) == 0" (parenthesized_expression "(*(byte *)((long)puVar24 + 9) & 8)" ( (binary_expression "*(byte *)((long)puVar24 + 9) & 8" (pointer_expression "*(byte *)((long)puVar24 + 9)" * (cast_expression "(byte *)((long)puVar24 + 9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar24 + 9)" ( (binary_expression "(long)puVar24 + 9" (cast_expression "(long)puVar24" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_0012b030;" goto statement_identifier ;)) (expression_statement "uVar12 = dcgettext(0,"compression header",5);" (assignment_expression "uVar12 = dcgettext(0,"compression header",5)" identifier = (call_expression "dcgettext(0,"compression header",5)" identifier (argument_list "(0,"compression header",5)" ( number_literal , (string_literal ""compression header"" " string_content ") , number_literal )))) ;) (expression_statement "lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);" (assignment_expression "lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" identifier = (call_expression "FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" identifier (argument_list "(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" ( identifier , (binary_expression "param_1 + 8" identifier + number_literal) , (binary_expression "param_1 + 0x10" identifier + number_literal) , (pointer_expression "*(undefined8 *)(puVar24 + 6)" * (cast_expression "(undefined8 *)(puVar24 + 6)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar24 + 6)" ( (binary_expression "puVar24 + 6" identifier + number_literal) )))) , number_literal , number_literal , identifier )))) ;) (if_statement "if (lVar20 == 0) goto LAB_0012b030;" if (parenthesized_expression "(lVar20 == 0)" ( (binary_expression "lVar20 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0012b030;" goto statement_identifier ;)) (expression_statement "FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);" (call_expression "FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8)" identifier (argument_list "(local_68,local_88,0x18,0x12bbf8)" ( identifier , identifier , number_literal , number_literal ))) ;) (expression_statement "uVar22 = local_68[0];" (assignment_expression "uVar22 = local_68[0]" identifier = (subscript_expression "local_68[0]" identifier [ number_literal ])) ;) (if_statement "if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" if (parenthesized_expression "(local_68[0] == 1)" ( (binary_expression "local_68[0] == 1" (subscript_expression "local_68[0]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n          printf("       ZLIB, ");\n        }" { (expression_statement "printf("       ZLIB, ");" (call_expression "printf("       ZLIB, ")" identifier (argument_list "("       ZLIB, ")" ( (string_literal ""       ZLIB, "" " string_content ") ))) ;) }) (else_clause "else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" else (compound_statement "{\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5)" identifier = (cast_expression "(char *)dcgettext(0,"       [<unknown>: 0x%x], ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"       [<unknown>: 0x%x], ",5)" identifier (argument_list "(0,"       [<unknown>: 0x%x], ",5)" ( number_literal , (string_literal ""       [<unknown>: 0x%x], "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar14,(ulong)uVar22);" (call_expression "printf(pcVar14,(ulong)uVar22)" identifier (argument_list "(pcVar14,(ulong)uVar22)" ( identifier , (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) }))) (expression_statement "uVar16 = (int)uVar17 + 1;" (assignment_expression "uVar16 = (int)uVar17 + 1" identifier = (binary_expression "(int)uVar17 + 1" (cast_expression "(int)uVar17" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar17 = (ulong)uVar16;" (assignment_expression "uVar17 = (ulong)uVar16" identifier = (cast_expression "(ulong)uVar16" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" identifier = (binary_expression "puVar24 + 0x14" identifier + number_literal)) ;) (expression_statement "FUN_001116b0(local_60,6);" (call_expression "FUN_001116b0(local_60,6)" identifier (argument_list "(local_60,6)" ( identifier , number_literal ))) ;) (expression_statement "printf(", %lu\n",local_58);" (call_expression "printf(", %lu\n",local_58)" identifier (argument_list "(", %lu\n",local_58)" ( (string_literal "", %lu\n"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(uVar16 < uVar22)" ( (binary_expression "uVar16 < uVar22" identifier < identifier) )) ;)) (goto_statement "goto LAB_0012bca8;" goto statement_identifier ;) })) }) (else_clause "else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" else (compound_statement "{\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" { (expression_statement "pcVar14 = (char *)dcgettext(0,"       Flags\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"       Flags\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"       Flags\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"       Flags\n",5)" identifier (argument_list "(0,"       Flags\n",5)" ( number_literal , (string_literal ""       Flags\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" identifier = (pointer_expression "*(uint *)(param_1 + 100)" * (cast_expression "(uint *)(param_1 + 100)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 100)" ( (binary_expression "param_1 + 100" identifier + number_literal) ))))) ;) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" identifier = (pointer_expression "*(uint **)(param_1 + 0x70)" * (cast_expression "(uint **)(param_1 + 0x70)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (if_statement "if (uVar22 != 0) goto LAB_0012ae50;" if (parenthesized_expression "(uVar22 != 0)" ( (binary_expression "uVar22 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0012ae50;" goto statement_identifier ;)) (labeled_statement "LAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }" statement_identifier : (if_statement "if (DAT_0019348c != 0) {\n      return 1;\n    }" if (parenthesized_expression "(DAT_0019348c != 0)" ( (binary_expression "DAT_0019348c != 0" identifier != number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) }))) }))) (expression_statement "pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" identifier (argument_list "(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" ( number_literal , (string_literal ""Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (expression_statement "sVar1 = *(short *)(param_1 + 0x52);" (assignment_expression "sVar1 = *(short *)(param_1 + 0x52)" identifier = (pointer_expression "*(short *)(param_1 + 0x52)" * (cast_expression "(short *)(param_1 + 0x52)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x52)" ( (binary_expression "param_1 + 0x52" identifier + number_literal) ))))) ;) (if_statement "if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" if (parenthesized_expression "(((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e))" ( (binary_expression "((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)" (parenthesized_expression "((ushort)(sVar1 - 0xb4U) < 2)" ( (binary_expression "(ushort)(sVar1 - 0xb4U) < 2" (call_expression "(ushort)(sVar1 - 0xb4U)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(sVar1 - 0xb4U)" ( (binary_expression "sVar1 - 0xb4U" identifier - number_literal) ))) < number_literal) )) || (parenthesized_expression "(sVar1 == 0x3e)" ( (binary_expression "sVar1 == 0x3e" identifier == number_literal) ))) )) (compound_statement "{\n    pcVar14 = "l (large), ";\n  }" { (expression_statement "pcVar14 = "l (large), ";" (assignment_expression "pcVar14 = "l (large), "" identifier = (string_literal ""l (large), "" " string_content ")) ;) }) (else_clause "else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" else (compound_statement "{\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" { (expression_statement "pcVar14 = "y (purecode), ";" (assignment_expression "pcVar14 = "y (purecode), "" identifier = (string_literal ""y (purecode), "" " string_content ")) ;) (if_statement "if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }" if (parenthesized_expression "(sVar1 != 0x28)" ( (binary_expression "sVar1 != 0x28" identifier != number_literal) )) (compound_statement "{\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }" { (if_statement "if (sVar1 != 0x14) goto LAB_0012bd12;" if (parenthesized_expression "(sVar1 != 0x14)" ( (binary_expression "sVar1 != 0x14" identifier != number_literal) )) (goto_statement "goto LAB_0012bd12;" goto statement_identifier ;)) (expression_statement "pcVar14 = "v (VLE), ";" (assignment_expression "pcVar14 = "v (VLE), "" identifier = (string_literal ""v (VLE), "" " string_content ")) ;) })) }))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar14,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar14,5)" identifier (argument_list "(0,pcVar14,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" identifier (argument_list "(pcVar14)" ( identifier ))) ;) (labeled_statement "LAB_0012bd12:\n  puts("p (processor specific)");" statement_identifier : (expression_statement "puts("p (processor specific)");" (call_expression "puts("p (processor specific)")" identifier (argument_list "("p (processor specific)")" ( (string_literal ""p (processor specific)"" " string_content ") ))) ;)) (return_statement "return 1;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) IDENT) ))) (compound_statement { (declaration (sized_type_specifier short) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , (string_literal " string_content escape_sequence ") , IDENT , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) ))))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) )) + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = LIT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (goto_statement goto statement_identifier ;)) }))) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) ))) )) (goto_statement goto statement_identifier ;)))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (string_literal " escape_sequence string_content escape_sequence ")) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) })) }))))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) )))) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) )))) ;) }))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT < LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (binary_expression IDENT == LIT)) )) && (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , LIT )))) , (binary_expression IDENT == LIT)) ))) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , LIT )))) , (binary_expression IDENT != LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , LIT )))) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , LIT )))) , (binary_expression IDENT != LIT)) )))) )) ))) )) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , LIT )))) , (binary_expression IDENT != LIT)) ))) )) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , LIT )))) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , LIT )))) , (binary_expression IDENT != LIT)) )))) )) ))) )) ))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) }))) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (goto_statement goto statement_identifier ;) })) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) })) }))) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;)) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }))) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (binary_expression (parenthesized_expression ( IDENT )) * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) != IDENT) )) (goto_statement goto statement_identifier ;)) }))) }))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;)) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) ))) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) ))) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) ))) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT) )) (goto_statement goto statement_identifier ;)) }))))))))))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (string_literal " escape_sequence string_content escape_sequence ")) ;) })))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT <= IDENT) ))) )) || (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) ))))) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (binary_expression IDENT != LIT) )))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (goto_statement goto statement_identifier ;)) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier short) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT)) && (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) == (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) }))) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT)) && (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) == (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (unary_expression ~ (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT >> (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) )))) & LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < IDENT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (goto_statement goto statement_identifier ;)) })))) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT <= IDENT) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) )))) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) })))))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;))) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (subscript_expression IDENT [ LIT ])) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) && (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - LIT) < LIT) ))) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }))) }))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (parenthesized_expression ( IDENT )) * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) })) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence string_content ") , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (subscript_expression IDENT [ LIT ]) )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " escape_sequence string_content ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (subscript_expression IDENT [ LIT ]) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence string_content ") , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT , IDENT ))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (cast_expression ( (type_descriptor TYPE) ) IDENT) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (string_literal " ")) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (cast_expression ( (type_descriptor TYPE) ) IDENT) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " ")) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }))) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) })) }))) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (break_statement break ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;)) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return LIT ;) }))) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier short) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - LIT) ))) < LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;)) (return_statement return LIT ;) })))
(function_definition "undefined8 FUN_0012ac00(long param_1)\n\n{\n  short sVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  byte bVar5;\n  ushort uVar6;\n  int iVar7;\n  int iVar8;\n  byte *pbVar9;\n  ulong uVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  char *pcVar14;\n  ulong uVar15;\n  uint uVar16;\n  ulong uVar17;\n  byte *pbVar18;\n  undefined4 uVar19;\n  long lVar20;\n  byte *pbVar21;\n  uint uVar22;\n  uint uVar23;\n  uint *puVar24;\n  bool bVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  byte bVar30;\n  undefined1 local_88 [32];\n  uint local_68 [2];\n  undefined8 local_60;\n  undefined8 local_58;\n  \n  bVar30 = 0;\n  uVar22 = *(uint *)(param_1 + 100);\n  *(undefined8 *)(param_1 + 0x70) = 0;\n  if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }\n  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }\n  if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }\n  if (iVar7 == 0) {\n    return 0;\n  }\n  uVar22 = *(uint *)(param_1 + 0x68);\n  puVar24 = *(uint **)(param_1 + 0x70);\n  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }\n  DAT_00194678 = 0;\n  DAT_00194690 = 0;\n  DAT_00194670 = 0;\n  DAT_001934b0 = (undefined8 *)0x0;\n  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;\n  uVar6 = *(ushort *)(param_1 + 0x52);\n  if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar14);\n  sVar1 = *(short *)(param_1 + 0x52);\n  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}" (type_identifier "undefined8") (function_declarator "FUN_0012ac00(long param_1)" (identifier "FUN_0012ac00") (parameter_list "(long param_1)" (( "(") (parameter_declaration "long param_1" (sized_type_specifier "long" (long "long")) (identifier "param_1")) () ")"))) (compound_statement "{\n  short sVar1;\n  int iVar2;\n  int iVar3;\n  int iVar4;\n  byte bVar5;\n  ushort uVar6;\n  int iVar7;\n  int iVar8;\n  byte *pbVar9;\n  ulong uVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  undefined8 uVar13;\n  char *pcVar14;\n  ulong uVar15;\n  uint uVar16;\n  ulong uVar17;\n  byte *pbVar18;\n  undefined4 uVar19;\n  long lVar20;\n  byte *pbVar21;\n  uint uVar22;\n  uint uVar23;\n  uint *puVar24;\n  bool bVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  bool bVar28;\n  undefined1 uVar29;\n  byte bVar30;\n  undefined1 local_88 [32];\n  uint local_68 [2];\n  undefined8 local_60;\n  undefined8 local_58;\n  \n  bVar30 = 0;\n  uVar22 = *(uint *)(param_1 + 100);\n  *(undefined8 *)(param_1 + 0x70) = 0;\n  if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }\n  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }\n  if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }\n  if (iVar7 == 0) {\n    return 0;\n  }\n  uVar22 = *(uint *)(param_1 + 0x68);\n  puVar24 = *(uint **)(param_1 + 0x70);\n  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }\n  DAT_00194678 = 0;\n  DAT_00194690 = 0;\n  DAT_00194670 = 0;\n  DAT_001934b0 = (undefined8 *)0x0;\n  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;\n  uVar6 = *(ushort *)(param_1 + 0x52);\n  if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;\nLAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\n  if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);\n  printf(pcVar14);\n  sVar1 = *(short *)(param_1 + 0x52);\n  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }\n  pcVar14 = (char *)dcgettext(0,pcVar14,5);\n  printf(pcVar14);\nLAB_0012bd12:\n  puts("p (processor specific)");\n  return 1;\n}" ({ "{") (declaration "short sVar1;" (sized_type_specifier "short" (short "short")) (identifier "sVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "byte bVar5;" (type_identifier "byte") (identifier "bVar5") (; ";")) (declaration "ushort uVar6;" (type_identifier "ushort") (identifier "uVar6") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "byte *pbVar9;" (type_identifier "byte") (pointer_declarator "*pbVar9" (* "*") (identifier "pbVar9")) (; ";")) (declaration "ulong uVar10;" (type_identifier "ulong") (identifier "uVar10") (; ";")) (declaration "undefined8 *puVar11;" (type_identifier "undefined8") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "undefined8 uVar12;" (type_identifier "undefined8") (identifier "uVar12") (; ";")) (declaration "undefined8 uVar13;" (type_identifier "undefined8") (identifier "uVar13") (; ";")) (declaration "char *pcVar14;" (primitive_type "char") (pointer_declarator "*pcVar14" (* "*") (identifier "pcVar14")) (; ";")) (declaration "ulong uVar15;" (type_identifier "ulong") (identifier "uVar15") (; ";")) (declaration "uint uVar16;" (type_identifier "uint") (identifier "uVar16") (; ";")) (declaration "ulong uVar17;" (type_identifier "ulong") (identifier "uVar17") (; ";")) (declaration "byte *pbVar18;" (type_identifier "byte") (pointer_declarator "*pbVar18" (* "*") (identifier "pbVar18")) (; ";")) (declaration "undefined4 uVar19;" (type_identifier "undefined4") (identifier "uVar19") (; ";")) (declaration "long lVar20;" (sized_type_specifier "long" (long "long")) (identifier "lVar20") (; ";")) (declaration "byte *pbVar21;" (type_identifier "byte") (pointer_declarator "*pbVar21" (* "*") (identifier "pbVar21")) (; ";")) (declaration "uint uVar22;" (type_identifier "uint") (identifier "uVar22") (; ";")) (declaration "uint uVar23;" (type_identifier "uint") (identifier "uVar23") (; ";")) (declaration "uint *puVar24;" (type_identifier "uint") (pointer_declarator "*puVar24" (* "*") (identifier "puVar24")) (; ";")) (declaration "bool bVar25;" (primitive_type "bool") (identifier "bVar25") (; ";")) (declaration "bool bVar26;" (primitive_type "bool") (identifier "bVar26") (; ";")) (declaration "undefined1 uVar27;" (type_identifier "undefined1") (identifier "uVar27") (; ";")) (declaration "bool bVar28;" (primitive_type "bool") (identifier "bVar28") (; ";")) (declaration "undefined1 uVar29;" (type_identifier "undefined1") (identifier "uVar29") (; ";")) (declaration "byte bVar30;" (type_identifier "byte") (identifier "bVar30") (; ";")) (declaration "undefined1 local_88 [32];" (type_identifier "undefined1") (array_declarator "local_88 [32]" (identifier "local_88") ([ "[") (number_literal "32") (] "]")) (; ";")) (declaration "uint local_68 [2];" (type_identifier "uint") (array_declarator "local_68 [2]" (identifier "local_68") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined8 local_60;" (type_identifier "undefined8") (identifier "local_60") (; ";")) (declaration "undefined8 local_58;" (type_identifier "undefined8") (identifier "local_58") (; ";")) (expression_statement "bVar30 = 0;" (assignment_expression "bVar30 = 0" (identifier "bVar30") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) (; ";")) (expression_statement "*(undefined8 *)(param_1 + 0x70) = 0;" (assignment_expression "*(undefined8 *)(param_1 + 0x70) = 0" (pointer_expression "*(undefined8 *)(param_1 + 0x70)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x70)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (uVar22 == 0) {\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }" (if "if") (parenthesized_expression "(uVar22 == 0)" (( "(") (binary_expression "uVar22 == 0" (identifier "uVar22") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);\n    printf(pcVar14);\n    return 1;\n  }" ({ "{") (if_statement "if (*(long *)(param_1 + 0x38) != 0) {\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }" (if "if") (parenthesized_expression "(*(long *)(param_1 + 0x38) != 0)" (( "(") (binary_expression "*(long *)(param_1 + 0x38) != 0" (pointer_expression "*(long *)(param_1 + 0x38)" (* "*") (cast_expression "(long *)(param_1 + 0x38)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);\n      warn(uVar12);\n      return 0;\n    }" ({ "{") (expression_statement "uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" (identifier "dcgettext") (argument_list "(0,\n                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"\n                         ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"" (" """) (string_content "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12);" (call_expression "warn(uVar12)" (identifier "warn") (argument_list "(uVar12)" (( "(") (identifier "uVar12") () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(DAT_00193494 == 0)" (( "(") (binary_expression "DAT_00193494 == 0" (identifier "DAT_00193494") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,"\nThere are no sections in this file.\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\nThere are no sections in this file.\n",5)" (identifier "dcgettext") (argument_list "(0,"\nThere are no sections in this file.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\nThere are no sections in this file.\n"" (" """) (escape_sequence "\n") (string_content "There are no sections in this file.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }" (if "if") (parenthesized_expression "((DAT_00193494 != 0) && (DAT_0019347c == 0))" (( "(") (binary_expression "(DAT_00193494 != 0) && (DAT_0019347c == 0)" (parenthesized_expression "(DAT_00193494 != 0)" (( "(") (binary_expression "DAT_00193494 != 0" (identifier "DAT_00193494") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_0019347c == 0)" (( "(") (binary_expression "DAT_0019347c == 0" (identifier "DAT_0019347c") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    uVar12 = *(undefined8 *)(param_1 + 0x38);\n    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);\n    printf(pcVar14,(ulong)uVar22,uVar12);\n  }" ({ "{") (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x38)" (identifier "uVar12") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x38)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x38)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")"))))) (; ";")) (expression_statement "pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5);" (assignment_expression "pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" (identifier "dcngettext") (argument_list "(0,"There is %d section header, starting at offset 0x%lx:\n",\n                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,\n                                 5)" (( "(") (number_literal "0") (, ",") (string_literal ""There is %d section header, starting at offset 0x%lx:\n"" (" """) (string_content "There is %d section header, starting at offset 0x%lx:") (escape_sequence "\n") (" """)) (, ",") (string_literal ""There are %d section headers, starting at offset 0x%lx:\n"" (" """) (string_content "There are %d section headers, starting at offset 0x%lx:") (escape_sequence "\n") (" """)) (, ",") (identifier "uVar22") (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14,(ulong)uVar22,uVar12);" (call_expression "printf(pcVar14,(ulong)uVar22,uVar12)" (identifier "printf") (argument_list "(pcVar14,(ulong)uVar22,uVar12)" (( "(") (identifier "pcVar14") (, ",") (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_0019345c == 0) {\n    iVar7 = FUN_00115940(param_1,0);\n  }\n  else {\n    iVar7 = FUN_00115650();\n  }" (if "if") (parenthesized_expression "(DAT_0019345c == 0)" (( "(") (binary_expression "DAT_0019345c == 0" (identifier "DAT_0019345c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar7 = FUN_00115940(param_1,0);\n  }" ({ "{") (expression_statement "iVar7 = FUN_00115940(param_1,0);" (assignment_expression "iVar7 = FUN_00115940(param_1,0)" (identifier "iVar7") (= "=") (call_expression "FUN_00115940(param_1,0)" (identifier "FUN_00115940") (argument_list "(param_1,0)" (( "(") (identifier "param_1") (, ",") (number_literal "0") () ")")))) (; ";")) (} "}")) (else_clause "else {\n    iVar7 = FUN_00115650();\n  }" (else "else") (compound_statement "{\n    iVar7 = FUN_00115650();\n  }" ({ "{") (expression_statement "iVar7 = FUN_00115650();" (assignment_expression "iVar7 = FUN_00115650()" (identifier "iVar7") (= "=") (call_expression "FUN_00115650()" (identifier "FUN_00115650") (argument_list "()" (( "(") () ")")))) (; ";")) (} "}")))) (if_statement "if (iVar7 == 0) {\n    return 0;\n  }" (if "if") (parenthesized_expression "(iVar7 == 0)" (( "(") (binary_expression "iVar7 == 0" (identifier "iVar7") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return 0;\n  }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "uVar22 = *(uint *)(param_1 + 0x68);" (assignment_expression "uVar22 = *(uint *)(param_1 + 0x68)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(param_1 + 0x68)" (* "*") (cast_expression "(uint *)(param_1 + 0x68)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x68)" (( "(") (binary_expression "param_1 + 0x68" (identifier "param_1") (+ "+") (number_literal "0x68")) () ")"))))) (; ";")) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" (identifier "puVar24") (= "=") (pointer_expression "*(uint **)(param_1 + 0x70)" (* "*") (cast_expression "(uint **)(param_1 + 0x70)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (if_statement "if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }" (if "if") (parenthesized_expression "(((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0))" (( "(") (binary_expression "((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&\n     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)" (parenthesized_expression "((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100)))" (( "(") (binary_expression "(uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))" (parenthesized_expression "(uVar22 != 0)" (( "(") (binary_expression "uVar22 != 0" (identifier "uVar22") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" (( "(") (binary_expression "uVar22 < *(uint *)(param_1 + 100)" (identifier "uVar22") (< "<") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)" (( "(") (binary_expression "*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0" (pointer_expression "*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" (* "*") (cast_expression "(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" (( "(") (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" (identifier "puVar24") (+ "+") (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) (* "*") (number_literal "0x14"))) (+ "+") (number_literal "8")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    uVar12 = dcgettext(0,"string table",5);\n    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);\n    uVar12 = 0;\n    *(long *)(param_1 + 0x80) = lVar20;\n    if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }\n    *(undefined8 *)(param_1 + 0x88) = uVar12;\n    puVar24 = *(uint **)(param_1 + 0x70);\n  }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"string table",5);" (assignment_expression "uVar12 = dcgettext(0,"string table",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"string table",5)" (identifier "dcgettext") (argument_list "(0,"string table",5)" (( "(") (number_literal "0") (, ",") (string_literal ""string table"" (" """) (string_content "string table") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);" (assignment_expression "lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" (identifier "lVar20") (= "=") (call_expression "FUN_001144a0(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" (identifier "FUN_001144a0") (argument_list "(0,param_1 + 8,param_1 + 0x10,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,\n                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12)" (( "(") (number_literal "0") (, ",") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) (, ",") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6)" (* "*") (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 6)" (( "(") (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 6" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" (identifier "puVar24") (+ "+") (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) (* "*") (number_literal "0x14"))) (+ "+") (number_literal "6")) () ")")))) (, ",") (number_literal "1") (, ",") (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" (* "*") (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" (( "(") (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" (identifier "puVar24") (+ "+") (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) (* "*") (number_literal "0x14"))) (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "uVar12") () ")")))) (; ";")) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(long *)(param_1 + 0x80) = lVar20;" (assignment_expression "*(long *)(param_1 + 0x80) = lVar20" (pointer_expression "*(long *)(param_1 + 0x80)" (* "*") (cast_expression "(long *)(param_1 + 0x80)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")")))) (= "=") (identifier "lVar20")) (; ";")) (if_statement "if (lVar20 != 0) {\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }" (if "if") (parenthesized_expression "(lVar20 != 0)" (( "(") (binary_expression "lVar20 != 0" (identifier "lVar20") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);\n    }" ({ "{") (expression_statement "uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);" (assignment_expression "uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" (identifier "uVar12") (= "=") (pointer_expression "*(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" (* "*") (cast_expression "(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + (ulong)uVar22 * 0x14 + 8)" (( "(") (binary_expression "puVar24 + (ulong)uVar22 * 0x14 + 8" (binary_expression "puVar24 + (ulong)uVar22 * 0x14" (identifier "puVar24") (+ "+") (binary_expression "(ulong)uVar22 * 0x14" (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) (* "*") (number_literal "0x14"))) (+ "+") (number_literal "8")) () ")"))))) (; ";")) (} "}"))) (expression_statement "*(undefined8 *)(param_1 + 0x88) = uVar12;" (assignment_expression "*(undefined8 *)(param_1 + 0x88) = uVar12" (pointer_expression "*(undefined8 *)(param_1 + 0x88)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x88)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" (identifier "puVar24") (= "=") (pointer_expression "*(uint **)(param_1 + 0x70)" (* "*") (cast_expression "(uint **)(param_1 + 0x70)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (} "}"))) (expression_statement "DAT_00194678 = 0;" (assignment_expression "DAT_00194678 = 0" (identifier "DAT_00194678") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00194690 = 0;" (assignment_expression "DAT_00194690 = 0" (identifier "DAT_00194690") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_00194670 = 0;" (assignment_expression "DAT_00194670 = 0" (identifier "DAT_00194670") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_001934b0 = (undefined8 *)0x0;" (assignment_expression "DAT_001934b0 = (undefined8 *)0x0" (identifier "DAT_001934b0") (= "=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;" (assignment_expression "DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4" (identifier "DAT_00196f54") (= "=") (binary_expression "(-(uint)(DAT_0019345c == 0) & 4) + 4" (parenthesized_expression "(-(uint)(DAT_0019345c == 0) & 4)" (( "(") (binary_expression "-(uint)(DAT_0019345c == 0) & 4" (unary_expression "-(uint)(DAT_0019345c == 0)" (- "-") (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(DAT_0019345c == 0)" (( "(") (binary_expression "DAT_0019345c == 0" (identifier "DAT_0019345c") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "4")) () ")")) (+ "+") (number_literal "4"))) (; ";")) (expression_statement "uVar6 = *(ushort *)(param_1 + 0x52);" (assignment_expression "uVar6 = *(ushort *)(param_1 + 0x52)" (identifier "uVar6") (= "=") (pointer_expression "*(ushort *)(param_1 + 0x52)" (* "*") (cast_expression "(ushort *)(param_1 + 0x52)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x52)" (( "(") (binary_expression "param_1 + 0x52" (identifier "param_1") (+ "+") (number_literal "0x52")) () ")"))))) (; ";")) (if_statement "if (uVar6 < 0x30) {\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }\n  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" (if "if") (parenthesized_expression "(uVar6 < 0x30)" (( "(") (binary_expression "uVar6 < 0x30" (identifier "uVar6") (< "<") (number_literal "0x30")) () ")")) (compound_statement "{\n    if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }\n  }" ({ "{") (if_statement "if (uVar6 < 0x2e) {\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }\n    else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" (if "if") (parenthesized_expression "(uVar6 < 0x2e)" (( "(") (binary_expression "uVar6 < 0x2e" (identifier "uVar6") (< "<") (number_literal "0x2e")) () ")")) (compound_statement "{\n      if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }\n    }" ({ "{") (if_statement "if (((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }" (if "if") (parenthesized_expression "(((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000))" (( "(") (binary_expression "((uVar6 == 8) || (uVar6 == 10)) &&\n         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)" (parenthesized_expression "((uVar6 == 8) || (uVar6 == 10))" (( "(") (binary_expression "(uVar6 == 8) || (uVar6 == 10)" (parenthesized_expression "(uVar6 == 8)" (( "(") (binary_expression "uVar6 == 8" (identifier "uVar6") (== "==") (number_literal "8")) () ")")) (|| "||") (parenthesized_expression "(uVar6 == 10)" (( "(") (binary_expression "uVar6 == 10" (identifier "uVar6") (== "==") (number_literal "10")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)" (( "(") (binary_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000" (parenthesized_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000)" (( "(") (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0xf000" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(undefined8 *)(param_1 + 0x48)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")")))) (& "&") (number_literal "0xf000")) () ")")) (== "==") (number_literal "0x4000")) () ")"))) () ")")) (compound_statement "{\n        if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }\n        DAT_00196f54 = 8;\n      }" ({ "{") (if_statement "if (puVar24 != (uint *)0x0) {\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }" (if "if") (parenthesized_expression "(puVar24 != (uint *)0x0)" (( "(") (binary_expression "puVar24 != (uint *)0x0" (identifier "puVar24") (!= "!=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");\n          puVar24 = *(uint **)(param_1 + 0x70);\n          if (lVar20 != 0) goto LAB_0012ad0a;\n        }" ({ "{") (expression_statement "lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");" (assignment_expression "lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32")" (identifier "lVar20") (= "=") (call_expression "FUN_001193c0(param_1,".gcc_compiled_long32")" (identifier "FUN_001193c0") (argument_list "(param_1,".gcc_compiled_long32")" (( "(") (identifier "param_1") (, ",") (string_literal "".gcc_compiled_long32"" (" """) (string_content ".gcc_compiled_long32") (" """)) () ")")))) (; ";")) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" (identifier "puVar24") (= "=") (pointer_expression "*(uint **)(param_1 + 0x70)" (* "*") (cast_expression "(uint **)(param_1 + 0x70)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (if_statement "if (lVar20 != 0) goto LAB_0012ad0a;" (if "if") (parenthesized_expression "(lVar20 != 0)" (( "(") (binary_expression "lVar20 != 0" (identifier "lVar20") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012ad0a;" (goto "goto") (statement_identifier "LAB_0012ad0a") (; ";"))) (} "}"))) (expression_statement "DAT_00196f54 = 8;" (assignment_expression "DAT_00196f54 = 8" (identifier "DAT_00196f54") (= "=") (number_literal "8")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" (else "else") (compound_statement "{\n      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;\n      if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }\nLAB_0012b791:\n      DAT_00196f54 = 2;\n    }" ({ "{") (expression_statement "uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;" (assignment_expression "uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000" (identifier "uVar22") (= "=") (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(undefined8 *)(param_1 + 0x48)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")")))) (& "&") (number_literal "0xff0000"))) (; ";")) (if_statement "if (uVar22 != 0x830000) {\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }" (if "if") (parenthesized_expression "(uVar22 != 0x830000)" (( "(") (binary_expression "uVar22 != 0x830000" (identifier "uVar22") (!= "!=") (number_literal "0x830000")) () ")")) (compound_statement "{\n        if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }\n      }" ({ "{") (if_statement "if (uVar22 < 0x830001) {\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }\n        else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" (if "if") (parenthesized_expression "(uVar22 < 0x830001)" (( "(") (binary_expression "uVar22 < 0x830001" (identifier "uVar22") (< "<") (number_literal "0x830001")) () ")")) (compound_statement "{\n          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }\n          if (uVar22 != 0x800000) goto LAB_0012ad0a;\n        }" ({ "{") (if_statement "if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }" (if "if") (parenthesized_expression "((uVar22 == 0x810000) || (uVar22 == 0x820000))" (( "(") (binary_expression "(uVar22 == 0x810000) || (uVar22 == 0x820000)" (parenthesized_expression "(uVar22 == 0x810000)" (( "(") (binary_expression "uVar22 == 0x810000" (identifier "uVar22") (== "==") (number_literal "0x810000")) () ")")) (|| "||") (parenthesized_expression "(uVar22 == 0x820000)" (( "(") (binary_expression "uVar22 == 0x820000" (identifier "uVar22") (== "==") (number_literal "0x820000")) () ")"))) () ")")) (compound_statement "{\nLAB_0012c4d0:\n            DAT_00196f54 = 4;\n            goto LAB_0012ad0a;\n          }" ({ "{") (labeled_statement "LAB_0012c4d0:\n            DAT_00196f54 = 4;" (statement_identifier "LAB_0012c4d0") (: ":") (expression_statement "DAT_00196f54 = 4;" (assignment_expression "DAT_00196f54 = 4" (identifier "DAT_00196f54") (= "=") (number_literal "4")) (; ";"))) (goto_statement "goto LAB_0012ad0a;" (goto "goto") (statement_identifier "LAB_0012ad0a") (; ";")) (} "}"))) (if_statement "if (uVar22 != 0x800000) goto LAB_0012ad0a;" (if "if") (parenthesized_expression "(uVar22 != 0x800000)" (( "(") (binary_expression "uVar22 != 0x800000" (identifier "uVar22") (!= "!=") (number_literal "0x800000")) () ")")) (goto_statement "goto LAB_0012ad0a;" (goto "goto") (statement_identifier "LAB_0012ad0a") (; ";"))) (} "}")) (else_clause "else {\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" (else "else") (compound_statement "{\n          if (uVar22 == 0x850000) goto LAB_0012c4d0;\n          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;\n        }" ({ "{") (if_statement "if (uVar22 == 0x850000) goto LAB_0012c4d0;" (if "if") (parenthesized_expression "(uVar22 == 0x850000)" (( "(") (binary_expression "uVar22 == 0x850000" (identifier "uVar22") (== "==") (number_literal "0x850000")) () ")")) (goto_statement "goto LAB_0012c4d0;" (goto "goto") (statement_identifier "LAB_0012c4d0") (; ";"))) (if_statement "if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;" (if "if") (parenthesized_expression "((uVar22 != 0x860000) && (uVar22 != 0x840000))" (( "(") (binary_expression "(uVar22 != 0x860000) && (uVar22 != 0x840000)" (parenthesized_expression "(uVar22 != 0x860000)" (( "(") (binary_expression "uVar22 != 0x860000" (identifier "uVar22") (!= "!=") (number_literal "0x860000")) () ")")) (&& "&&") (parenthesized_expression "(uVar22 != 0x840000)" (( "(") (binary_expression "uVar22 != 0x840000" (identifier "uVar22") (!= "!=") (number_literal "0x840000")) () ")"))) () ")")) (goto_statement "goto LAB_0012ad0a;" (goto "goto") (statement_identifier "LAB_0012ad0a") (; ";"))) (} "}")))) (} "}"))) (labeled_statement "LAB_0012b791:\n      DAT_00196f54 = 2;" (statement_identifier "LAB_0012b791") (: ":") (expression_statement "DAT_00196f54 = 2;" (assignment_expression "DAT_00196f54 = 2" (identifier "DAT_00196f54") (= "=") (number_literal "2")) (; ";"))) (} "}")))) (} "}")) (else_clause "else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" (else "else") (if_statement "if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;" (if "if") (parenthesized_expression "(((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75))" (( "(") (binary_expression "((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&\n          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)" (parenthesized_expression "((uVar6 == 0x78) || (uVar6 == 0xfeb0))" (( "(") (binary_expression "(uVar6 == 0x78) || (uVar6 == 0xfeb0)" (parenthesized_expression "(uVar6 == 0x78)" (( "(") (binary_expression "uVar6 == 0x78" (identifier "uVar6") (== "==") (number_literal "0x78")) () ")")) (|| "||") (parenthesized_expression "(uVar6 == 0xfeb0)" (( "(") (binary_expression "uVar6 == 0xfeb0" (identifier "uVar6") (== "==") (number_literal "0xfeb0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)" (( "(") (binary_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75" (parenthesized_expression "((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f)" (( "(") (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48) & 0x7f" (binary_expression "(uint)*(undefined8 *)(param_1 + 0x48)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(undefined8 *)(param_1 + 0x48)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")")))) (& "&") (number_literal "0x7f")) () ")")) (== "==") (number_literal "0x75")) () ")"))) () ")")) (goto_statement "goto LAB_0012b791;" (goto "goto") (statement_identifier "LAB_0012b791") (; ";"))))) (labeled_statement "LAB_0012ad0a:\n  if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" (statement_identifier "LAB_0012ad0a") (: ":") (if_statement "if (*(int *)(param_1 + 100) == 0) {\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }\n  else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 100) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 100) == 0" (pointer_expression "*(int *)(param_1 + 100)" (* "*") (cast_expression "(int *)(param_1 + 100)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\nLAB_0012c296:\n    pcVar14 = "\nSection Header:\n";\n  }" ({ "{") (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(DAT_00193494 == 0)" (( "(") (binary_expression "DAT_00193494 == 0" (identifier "DAT_00193494") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (labeled_statement "LAB_0012c296:\n    pcVar14 = "\nSection Header:\n";" (statement_identifier "LAB_0012c296") (: ":") (expression_statement "pcVar14 = "\nSection Header:\n";" (assignment_expression "pcVar14 = "\nSection Header:\n"" (identifier "pcVar14") (= "=") (string_literal ""\nSection Header:\n"" (" """) (escape_sequence "\n") (string_content "Section Header:") (escape_sequence "\n") (" """))) (; ";"))) (} "}")) (else_clause "else {\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" (else "else") (compound_statement "{\n    uVar22 = 0;\n    do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));\n    if (DAT_00193494 == 0) {\n      return 1;\n    }\n    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;\n    pcVar14 = "\nSection Headers:\n";\n  }" ({ "{") (expression_statement "uVar22 = 0;" (assignment_expression "uVar22 = 0" (identifier "uVar22") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    } while (uVar22 < *(uint *)(param_1 + 100));" (do "do") (compound_statement "{\n      if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }\n      iVar4 = DAT_00196f7c;\n      iVar3 = DAT_00196f48;\n      iVar2 = DAT_00196f3c;\n      iVar7 = DAT_00196f28;\n      uVar16 = puVar24[1];\n      if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }\nLAB_0012ad90:\n      uVar22 = uVar22 + 1;\n      puVar24 = puVar24 + 0x14;\n    }" ({ "{") (if_statement "if (puVar24 == (uint *)0x0) {\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }\n      else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" (if "if") (parenthesized_expression "(puVar24 == (uint *)0x0)" (( "(") (binary_expression "puVar24 == (uint *)0x0" (identifier "puVar24") (== "==") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        pbVar9 = (byte *)dcgettext(0,"<none>",5);\n      }" ({ "{") (expression_statement "pbVar9 = (byte *)dcgettext(0,"<none>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<none>",5)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)dcgettext(0,"<none>",5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"<none>",5)" (identifier "dcgettext") (argument_list "(0,"<none>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<none>"" (" """) (string_content "<none>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (} "}")) (else_clause "else if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" (else "else") (if_statement "if (*(long *)(param_1 + 0x80) == 0) {\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }\n      else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" (if "if") (parenthesized_expression "(*(long *)(param_1 + 0x80) == 0)" (( "(") (binary_expression "*(long *)(param_1 + 0x80) == 0" (pointer_expression "*(long *)(param_1 + 0x80)" (* "*") (cast_expression "(long *)(param_1 + 0x80)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n      }" ({ "{") (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"<no-strings>",5)" (identifier "dcgettext") (argument_list "(0,"<no-strings>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<no-strings>"" (" """) (string_content "<no-strings>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" (else "else") (compound_statement "{\n        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);\n        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }\n      }" ({ "{") (expression_statement "pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);" (assignment_expression "pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_1 + 0x80) + (ulong)*puVar24)" (( "(") (binary_expression "*(long *)(param_1 + 0x80) + (ulong)*puVar24" (pointer_expression "*(long *)(param_1 + 0x80)" (* "*") (cast_expression "(long *)(param_1 + 0x80)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")")))) (+ "+") (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (identifier "puVar24"))) () ")")))) (; ";")) (if_statement "if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }" (if "if") (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24)" (( "(") (binary_expression "*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24" (pointer_expression "*(ulong *)(param_1 + 0x88)" (* "*") (cast_expression "(ulong *)(param_1 + 0x88)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")")))) (<= "<=") (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (identifier "puVar24"))) () ")")) (compound_statement "{\n          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n        }" ({ "{") (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"<corrupt>",5)" (identifier "dcgettext") (argument_list "(0,"<corrupt>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<corrupt>"" (" """) (string_content "<corrupt>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (} "}"))) (} "}")))))) (expression_statement "iVar4 = DAT_00196f7c;" (assignment_expression "iVar4 = DAT_00196f7c" (identifier "iVar4") (= "=") (identifier "DAT_00196f7c")) (; ";")) (expression_statement "iVar3 = DAT_00196f48;" (assignment_expression "iVar3 = DAT_00196f48" (identifier "iVar3") (= "=") (identifier "DAT_00196f48")) (; ";")) (expression_statement "iVar2 = DAT_00196f3c;" (assignment_expression "iVar2 = DAT_00196f3c" (identifier "iVar2") (= "=") (identifier "DAT_00196f3c")) (; ";")) (expression_statement "iVar7 = DAT_00196f28;" (assignment_expression "iVar7 = DAT_00196f28" (identifier "iVar7") (= "=") (identifier "DAT_00196f28")) (; ";")) (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" (identifier "uVar16") (= "=") (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if (uVar16 == 0xb) {\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }\n      else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" (if "if") (parenthesized_expression "(uVar16 == 0xb)" (( "(") (binary_expression "uVar16 == 0xb" (identifier "uVar16") (== "==") (number_literal "0xb")) () ")")) (compound_statement "{\n        pcVar14 = "File contains multiple dynamic symbol tables\n";\n        if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }\n      }" ({ "{") (expression_statement "pcVar14 = "File contains multiple dynamic symbol tables\n";" (assignment_expression "pcVar14 = "File contains multiple dynamic symbol tables\n"" (identifier "pcVar14") (= "=") (string_literal ""File contains multiple dynamic symbol tables\n"" (" """) (string_content "File contains multiple dynamic symbol tables") (escape_sequence "\n") (" """))) (; ";")) (if_statement "if (DAT_00194678 == 0) {\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }\n        else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" (if "if") (parenthesized_expression "(DAT_00194678 == 0)" (( "(") (binary_expression "DAT_00194678 == 0" (identifier "DAT_00194678") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }\n        }" ({ "{") (if_statement "if (DAT_0019345c == 0) {\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }\n          else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" (if "if") (parenthesized_expression "(DAT_0019345c == 0)" (( "(") (binary_expression "DAT_0019345c == 0" (identifier "DAT_0019345c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }\nLAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);\n          }" ({ "{") (if_statement "if (*(long *)(puVar24 + 0xe) != 0x18) {\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }" (if "if") (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 0x18)" (( "(") (binary_expression "*(long *)(puVar24 + 0xe) != 0x18" (pointer_expression "*(long *)(puVar24 + 0xe)" (* "*") (cast_expression "(long *)(puVar24 + 0xe)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (number_literal "0x18")) () ")")) (compound_statement "{\n              uVar19 = 0x18;\n              uVar12 = 0x18;\n              goto LAB_0012b923;\n            }" ({ "{") (expression_statement "uVar19 = 0x18;" (assignment_expression "uVar19 = 0x18" (identifier "uVar19") (= "=") (number_literal "0x18")) (; ";")) (expression_statement "uVar12 = 0x18;" (assignment_expression "uVar12 = 0x18" (identifier "uVar12") (= "=") (number_literal "0x18")) (; ";")) (goto_statement "goto LAB_0012b923;" (goto "goto") (statement_identifier "LAB_0012b923") (; ";")) (} "}"))) (labeled_statement "LAB_0012b7d2:\n            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);" (statement_identifier "LAB_0012b7d2") (: ":") (expression_statement "DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);" (assignment_expression "DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680)" (identifier "DAT_00194678") (= "=") (call_expression "FUN_00114ea0(param_1,puVar24,&DAT_00194680)" (identifier "FUN_00114ea0") (argument_list "(param_1,puVar24,&DAT_00194680)" (( "(") (identifier "param_1") (, ",") (identifier "puVar24") (, ",") (pointer_expression "&DAT_00194680" (& "&") (identifier "DAT_00194680")) () ")")))) (; ";"))) (} "}")) (else_clause "else {\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" (else "else") (compound_statement "{\n            if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }\n            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);\n          }" ({ "{") (if_statement "if (*(long *)(puVar24 + 0xe) != 0x10) {\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }" (if "if") (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 0x10)" (( "(") (binary_expression "*(long *)(puVar24 + 0xe) != 0x10" (pointer_expression "*(long *)(puVar24 + 0xe)" (* "*") (cast_expression "(long *)(puVar24 + 0xe)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (number_literal "0x10")) () ")")) (compound_statement "{\n              uVar19 = 0x10;\n              uVar12 = 0x10;\nLAB_0012b923:\n              sprintf((char *)local_68,"%016lx");\n              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n              error(uVar13,uVar22,local_68);\n              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n              error(uVar13,uVar19);\n              iVar7 = DAT_0019345c;\n              *(undefined8 *)(puVar24 + 0xe) = uVar12;\n              if (iVar7 == 0) goto LAB_0012b7d2;\n            }" ({ "{") (expression_statement "uVar19 = 0x10;" (assignment_expression "uVar19 = 0x10" (identifier "uVar19") (= "=") (number_literal "0x10")) (; ";")) (expression_statement "uVar12 = 0x10;" (assignment_expression "uVar12 = 0x10" (identifier "uVar12") (= "=") (number_literal "0x10")) (; ";")) (labeled_statement "LAB_0012b923:\n              sprintf((char *)local_68,"%016lx");" (statement_identifier "LAB_0012b923") (: ":") (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" (identifier "sprintf") (argument_list "((char *)local_68,"%016lx")" (( "(") (cast_expression "(char *)local_68" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_68")) (, ",") (string_literal ""%016lx"" (" """) (string_content "%016lx") (" """)) () ")"))) (; ";"))) (expression_statement "uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" (identifier "uVar13") (= "=") (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" (identifier "dcgettext") (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Section %d has invalid sh_entsize of %s\n"" (" """) (string_content "Section %d has invalid sh_entsize of %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar13,uVar22,local_68);" (call_expression "error(uVar13,uVar22,local_68)" (identifier "error") (argument_list "(uVar13,uVar22,local_68)" (( "(") (identifier "uVar13") (, ",") (identifier "uVar22") (, ",") (identifier "local_68") () ")"))) (; ";")) (expression_statement "uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (identifier "uVar13") (= "=") (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (identifier "dcgettext") (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" (" """) (string_content "(Using the expected size of %u for the rest of this dump)") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar13,uVar19);" (call_expression "error(uVar13,uVar19)" (identifier "error") (argument_list "(uVar13,uVar19)" (( "(") (identifier "uVar13") (, ",") (identifier "uVar19") () ")"))) (; ";")) (expression_statement "iVar7 = DAT_0019345c;" (assignment_expression "iVar7 = DAT_0019345c" (identifier "iVar7") (= "=") (identifier "DAT_0019345c")) (; ";")) (expression_statement "*(undefined8 *)(puVar24 + 0xe) = uVar12;" (assignment_expression "*(undefined8 *)(puVar24 + 0xe) = uVar12" (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xe)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (= "=") (identifier "uVar12")) (; ";")) (if_statement "if (iVar7 == 0) goto LAB_0012b7d2;" (if "if") (parenthesized_expression "(iVar7 == 0)" (( "(") (binary_expression "iVar7 == 0" (identifier "iVar7") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012b7d2;" (goto "goto") (statement_identifier "LAB_0012b7d2") (; ";"))) (} "}"))) (expression_statement "DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);" (assignment_expression "DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680)" (identifier "DAT_00194678") (= "=") (call_expression "FUN_001149b0(param_1,puVar24,&DAT_00194680)" (identifier "FUN_001149b0") (argument_list "(param_1,puVar24,&DAT_00194680)" (( "(") (identifier "param_1") (, ",") (identifier "puVar24") (, ",") (pointer_expression "&DAT_00194680" (& "&") (identifier "DAT_00194680")) () ")")))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" (else "else") (compound_statement "{\nLAB_0012b69a:\n          dcgettext(0,pcVar14,5);\n          error();\n        }" ({ "{") (labeled_statement "LAB_0012b69a:\n          dcgettext(0,pcVar14,5);" (statement_identifier "LAB_0012b69a") (: ":") (expression_statement "dcgettext(0,pcVar14,5);" (call_expression "dcgettext(0,pcVar14,5)" (identifier "dcgettext") (argument_list "(0,pcVar14,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar14") (, ",") (number_literal "5") () ")"))) (; ";"))) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" (else "else") (compound_statement "{\n        bVar25 = uVar16 < 3;\n        bVar28 = uVar16 == 3;\n        if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n      }" ({ "{") (expression_statement "bVar25 = uVar16 < 3;" (assignment_expression "bVar25 = uVar16 < 3" (identifier "bVar25") (= "=") (binary_expression "uVar16 < 3" (identifier "uVar16") (< "<") (number_literal "3"))) (; ";")) (expression_statement "bVar28 = uVar16 == 3;" (assignment_expression "bVar28 = uVar16 == 3" (identifier "bVar28") (= "=") (binary_expression "uVar16 == 3" (identifier "uVar16") (== "==") (number_literal "3"))) (; ";")) (if_statement "if (bVar28) {\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }\n        else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (compound_statement "{\n          lVar20 = 8;\n          pbVar18 = pbVar9;\n          pbVar21 = (byte *)".dynstr";\n          do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);\n          if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }\n        }" ({ "{") (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" (identifier "lVar20") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".dynstr";" (assignment_expression "pbVar21 = (byte *)".dynstr"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".dynstr"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".dynstr"" (" """) (string_content ".dynstr") (" """)))) (; ";")) (do_statement "do {\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          } while (bVar28);" (do "do") (compound_statement "{\n            if (lVar20 == 0) break;\n            lVar20 = lVar20 + -1;\n            bVar25 = *pbVar18 < *pbVar21;\n            bVar28 = *pbVar18 == *pbVar21;\n            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n          }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) == bVar25) {\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }\n          else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25")) () ")")) (compound_statement "{\n            if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }\n            uVar12 = dcgettext(0,"dynamic strings",5);\n            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);\n            DAT_00194688 = 0;\n            if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }\n          }" ({ "{") (if_statement "if (DAT_00194690 != 0) {\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }" (if "if") (parenthesized_expression "(DAT_00194690 != 0)" (( "(") (binary_expression "DAT_00194690 != 0" (identifier "DAT_00194690") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              pcVar14 = "File contains multiple dynamic string tables\n";\n              goto LAB_0012b69a;\n            }" ({ "{") (expression_statement "pcVar14 = "File contains multiple dynamic string tables\n";" (assignment_expression "pcVar14 = "File contains multiple dynamic string tables\n"" (identifier "pcVar14") (= "=") (string_literal ""File contains multiple dynamic string tables\n"" (" """) (string_content "File contains multiple dynamic string tables") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0012b69a;" (goto "goto") (statement_identifier "LAB_0012b69a") (; ";")) (} "}"))) (expression_statement "uVar12 = dcgettext(0,"dynamic strings",5);" (assignment_expression "uVar12 = dcgettext(0,"dynamic strings",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"dynamic strings",5)" (identifier "dcgettext") (argument_list "(0,"dynamic strings",5)" (( "(") (number_literal "0") (, ",") (string_literal ""dynamic strings"" (" """) (string_content "dynamic strings") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12);" (assignment_expression "DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" (identifier "DAT_00194690") (= "=") (call_expression "FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" (identifier "FUN_001144a0") (argument_list "(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                                        *(undefined8 *)(puVar24 + 8),uVar12)" (( "(") (number_literal "0") (, ",") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) (, ",") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 6)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 6)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 6)" (( "(") (binary_expression "puVar24 + 6" (identifier "puVar24") (+ "+") (number_literal "6")) () ")")))) (, ",") (number_literal "1") (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 8)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 8)" (( "(") (binary_expression "puVar24 + 8" (identifier "puVar24") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "uVar12") () ")")))) (; ";")) (expression_statement "DAT_00194688 = 0;" (assignment_expression "DAT_00194688 = 0" (identifier "DAT_00194688") (= "=") (number_literal "0")) (; ";")) (if_statement "if (DAT_00194690 != 0) {\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }" (if "if") (parenthesized_expression "(DAT_00194690 != 0)" (( "(") (binary_expression "DAT_00194690 != 0" (identifier "DAT_00194690") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              DAT_00194688 = *(undefined8 *)(puVar24 + 8);\n            }" ({ "{") (expression_statement "DAT_00194688 = *(undefined8 *)(puVar24 + 8);" (assignment_expression "DAT_00194688 = *(undefined8 *)(puVar24 + 8)" (identifier "DAT_00194688") (= "=") (pointer_expression "*(undefined8 *)(puVar24 + 8)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 8)" (( "(") (binary_expression "puVar24 + 8" (identifier "puVar24") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" (else "else") (compound_statement "{\nLAB_0012b1ff:\n            bVar25 = false;\n            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);\n            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;\n            lVar20 = 7;\n            pbVar18 = pbVar9;\n            pbVar21 = (byte *)".debug_";\n            do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);\n            bVar26 = false;\n            bVar25 = (!bVar25 && !bVar28) == bVar25;\n            if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }\nLAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);\n          }" ({ "{") (labeled_statement "LAB_0012b1ff:\n            bVar25 = false;" (statement_identifier "LAB_0012b1ff") (: ":") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";"))) (expression_statement "bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);" (assignment_expression "bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" (identifier "bVar28") (= "=") (binary_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" (parenthesized_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0)" (( "(") (binary_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                     DAT_00196f74 == 0" (parenthesized_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0)" (( "(") (binary_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0" (parenthesized_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0)" (( "(") (binary_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0) && DAT_00196f48 == 0" (parenthesized_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0)" (( "(") (binary_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                        DAT_00196f60 == 0" (parenthesized_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0)" (( "(") (binary_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0" (parenthesized_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0)" (( "(") (binary_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0) && DAT_00196f28 == 0" (parenthesized_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0)" (( "(") (binary_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                           DAT_00196f6c == 0" (parenthesized_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0)" (( "(") (binary_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0" (parenthesized_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0)" (( "(") (binary_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0) && DAT_00196f30 == 0" (parenthesized_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0)" (( "(") (binary_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                              DAT_00196f68 == 0" (parenthesized_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0)" (( "(") (binary_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0" (parenthesized_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0)" (( "(") (binary_expression "DAT_00196f40 == 0 && DAT_00196f5c == 0" (binary_expression "DAT_00196f40 == 0" (identifier "DAT_00196f40") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_00196f5c == 0" (identifier "DAT_00196f5c") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f38 == 0" (identifier "DAT_00196f38") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f68 == 0" (identifier "DAT_00196f68") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f30 == 0" (identifier "DAT_00196f30") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f34 == 0" (identifier "DAT_00196f34") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f6c == 0" (identifier "DAT_00196f6c") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f28 == 0" (identifier "DAT_00196f28") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f3c == 0" (identifier "DAT_00196f3c") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f60 == 0" (identifier "DAT_00196f60") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f48 == 0" (identifier "DAT_00196f48") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f7c == 0" (identifier "DAT_00196f7c") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f74 == 0" (identifier "DAT_00196f74") (== "==") (number_literal "0"))) () ")")) (&& "&&") (parenthesized_expression "(DAT_00196f2c == 0 && DAT_0019346c == 0)" (( "(") (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" (identifier "DAT_00196f2c") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_0019346c == 0" (identifier "DAT_0019346c") (== "==") (number_literal "0"))) () ")")))) (; ";")) (if_statement "if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;" (if "if") (parenthesized_expression "(((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0))" (( "(") (binary_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)" (parenthesized_expression "((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0)" (( "(") (binary_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&\n                DAT_00196f74 == 0" (parenthesized_expression "(((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0)" (( "(") (binary_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0" (parenthesized_expression "((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0)" (( "(") (binary_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0) && DAT_00196f48 == 0" (parenthesized_expression "(((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0)" (( "(") (binary_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&\n                   DAT_00196f60 == 0" (parenthesized_expression "((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0)" (( "(") (binary_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0" (parenthesized_expression "(((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0)" (( "(") (binary_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0) && DAT_00196f28 == 0" (parenthesized_expression "((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0)" (( "(") (binary_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&\n                      DAT_00196f6c == 0" (parenthesized_expression "(((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0)" (( "(") (binary_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0" (parenthesized_expression "((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0)" (( "(") (binary_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0) && DAT_00196f30 == 0" (parenthesized_expression "(((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0)" (( "(") (binary_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&\n                         DAT_00196f68 == 0" (parenthesized_expression "((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0)" (( "(") (binary_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0" (parenthesized_expression "(DAT_00196f40 == 0 && DAT_00196f5c == 0)" (( "(") (binary_expression "DAT_00196f40 == 0 && DAT_00196f5c == 0" (binary_expression "DAT_00196f40 == 0" (identifier "DAT_00196f40") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_00196f5c == 0" (identifier "DAT_00196f5c") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f38 == 0" (identifier "DAT_00196f38") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f68 == 0" (identifier "DAT_00196f68") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f30 == 0" (identifier "DAT_00196f30") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f34 == 0" (identifier "DAT_00196f34") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f6c == 0" (identifier "DAT_00196f6c") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f28 == 0" (identifier "DAT_00196f28") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f3c == 0" (identifier "DAT_00196f3c") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f60 == 0" (identifier "DAT_00196f60") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f48 == 0" (identifier "DAT_00196f48") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f7c == 0" (identifier "DAT_00196f7c") (== "==") (number_literal "0"))) () ")")) (&& "&&") (binary_expression "DAT_00196f74 == 0" (identifier "DAT_00196f74") (== "==") (number_literal "0"))) () ")")) (&& "&&") (parenthesized_expression "(DAT_00196f2c == 0 && DAT_0019346c == 0)" (( "(") (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" (identifier "DAT_00196f2c") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_0019346c == 0" (identifier "DAT_0019346c") (== "==") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_0012b2b0;" (goto "goto") (statement_identifier "LAB_0012b2b0") (; ";"))) (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" (identifier "lVar20") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".debug_";" (assignment_expression "pbVar21 = (byte *)".debug_"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".debug_"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".debug_"" (" """) (string_content ".debug_") (" """)))) (; ";")) (do_statement "do {\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            } while (bVar28);" (do "do") (compound_statement "{\n              if (lVar20 == 0) break;\n              lVar20 = lVar20 + -1;\n              bVar25 = *pbVar18 < *pbVar21;\n              bVar28 = *pbVar18 == *pbVar21;\n              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n            }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" (identifier "bVar26") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" (identifier "bVar25") (= "=") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25"))) (; ";")) (if_statement "if (bVar25) {\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }\n            else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" (if "if") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (compound_statement "{\nLAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;\n              if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }\n              if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }\n            }" ({ "{") (labeled_statement "LAB_0012b3f7:\n              pbVar18 = pbVar9 + 7;" (statement_identifier "LAB_0012b3f7") (: ":") (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" (identifier "pbVar18") (= "=") (binary_expression "pbVar9 + 7" (identifier "pbVar9") (+ "+") (number_literal "7"))) (; ";"))) (if_statement "if (pbVar9[1] == 0x7a) {\n                pbVar18 = pbVar9 + 8;\n              }" (if "if") (parenthesized_expression "(pbVar9[1] == 0x7a)" (( "(") (binary_expression "pbVar9[1] == 0x7a" (subscript_expression "pbVar9[1]" (identifier "pbVar9") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "0x7a")) () ")")) (compound_statement "{\n                pbVar18 = pbVar9 + 8;\n              }" ({ "{") (expression_statement "pbVar18 = pbVar9 + 8;" (assignment_expression "pbVar18 = pbVar9 + 8" (identifier "pbVar18") (= "=") (binary_expression "pbVar9 + 8" (identifier "pbVar9") (+ "+") (number_literal "8"))) (; ";")) (} "}"))) (if_statement "if (DAT_0019346c == 0) {\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }" (if "if") (parenthesized_expression "(DAT_0019346c == 0)" (( "(") (binary_expression "DAT_0019346c == 0" (identifier "DAT_0019346c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                bVar28 = false;\n                bVar25 = DAT_00196f2c == 0;\n                if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }\n              }" ({ "{") (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" (identifier "bVar28") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = DAT_00196f2c == 0;" (assignment_expression "bVar25 = DAT_00196f2c == 0" (identifier "bVar25") (= "=") (binary_expression "DAT_00196f2c == 0" (identifier "DAT_00196f2c") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar25) {\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }\n                else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" (if "if") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (compound_statement "{\nLAB_0012b446:\n                  bVar25 = false;\n                  bVar28 = DAT_00196f40 == 0;\n                  if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }\n                  bVar25 = false;\n                  bVar28 = DAT_00196f5c == 0;\n                  if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }\n                }" ({ "{") (labeled_statement "LAB_0012b446:\n                  bVar25 = false;" (statement_identifier "LAB_0012b446") (: ":") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";"))) (expression_statement "bVar28 = DAT_00196f40 == 0;" (assignment_expression "bVar28 = DAT_00196f40 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f40 == 0" (identifier "DAT_00196f40") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!bVar28) {\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }" (if "if") (parenthesized_expression "(!bVar28)" (( "(") (unary_expression "!bVar28" (! "!") (identifier "bVar28")) () ")")) (compound_statement "{\n                    lVar20 = 6;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1826c0;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                  }" ({ "{") (expression_statement "lVar20 = 6;" (assignment_expression "lVar20 = 6" (identifier "lVar20") (= "=") (number_literal "6")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1826c0;" (assignment_expression "pbVar21 = (byte *)0x1826c0" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1826c0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1826c0"))) (; ";")) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" (do "do") (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25")) () ")")) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";"))) (} "}"))) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";")) (expression_statement "bVar28 = DAT_00196f5c == 0;" (assignment_expression "bVar28 = DAT_00196f5c == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f5c == 0" (identifier "DAT_00196f5c") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar28) {\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }\n                  else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (compound_statement "{\nLAB_0012b490:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f38 == 0;\n                    if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }\n                  }" ({ "{") (labeled_statement "LAB_0012b490:\n                    bVar25 = false;" (statement_identifier "LAB_0012b490") (: ":") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";"))) (expression_statement "bVar28 = DAT_00196f38 == 0;" (assignment_expression "bVar28 = DAT_00196f38 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f38 == 0" (identifier "DAT_00196f38") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar28) {\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }\n                    else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (compound_statement "{\n                      bVar25 = false;\n                      bVar28 = DAT_00196f68 == 0;\n                      if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }\n                    }" ({ "{") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";")) (expression_statement "bVar28 = DAT_00196f68 == 0;" (assignment_expression "bVar28 = DAT_00196f68 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f68 == 0" (identifier "DAT_00196f68") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar28) {\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }\n                      else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (compound_statement "{\nLAB_0012b4dd:\n                        bVar25 = false;\n                        bVar28 = DAT_00196f30 == 0;\n                        if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }\n                        bVar25 = false;\n                        bVar28 = DAT_00196f60 == 0;\n                        if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }\n                      }" ({ "{") (labeled_statement "LAB_0012b4dd:\n                        bVar25 = false;" (statement_identifier "LAB_0012b4dd") (: ":") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";"))) (expression_statement "bVar28 = DAT_00196f30 == 0;" (assignment_expression "bVar28 = DAT_00196f30 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f30 == 0" (identifier "DAT_00196f30") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!bVar28) {\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }" (if "if") (parenthesized_expression "(!bVar28)" (( "(") (unary_expression "!bVar28" (! "!") (identifier "bVar28")) () ")")) (compound_statement "{\n                          lVar20 = 7;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1826ce;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                        }" ({ "{") (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" (identifier "lVar20") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1826ce;" (assignment_expression "pbVar21 = (byte *)0x1826ce" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1826ce" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1826ce"))) (; ";")) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);" (do "do") (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25")) () ")")) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";"))) (} "}"))) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";")) (expression_statement "bVar28 = DAT_00196f60 == 0;" (assignment_expression "bVar28 = DAT_00196f60 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f60 == 0" (identifier "DAT_00196f60") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar28) {\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }\n                        else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (compound_statement "{\nLAB_0012b547:\n                          bVar25 = false;\n                          bVar28 = DAT_00196f34 == 0;\n                          if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }\n                          bVar25 = false;\n                          bVar28 = DAT_00196f6c == 0;\n                          if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }\n                          if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;\n                        }" ({ "{") (labeled_statement "LAB_0012b547:\n                          bVar25 = false;" (statement_identifier "LAB_0012b547") (: ":") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";"))) (expression_statement "bVar28 = DAT_00196f34 == 0;" (assignment_expression "bVar28 = DAT_00196f34 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f34 == 0" (identifier "DAT_00196f34") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!bVar28) {\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }" (if "if") (parenthesized_expression "(!bVar28)" (( "(") (unary_expression "!bVar28" (! "!") (identifier "bVar28")) () ")")) (compound_statement "{\n                            lVar20 = 5;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x18246b;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                          }" ({ "{") (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" (identifier "lVar20") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x18246b;" (assignment_expression "pbVar21 = (byte *)0x18246b" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x18246b" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x18246b"))) (; ";")) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);" (do "do") (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25")) () ")")) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";"))) (} "}"))) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";")) (expression_statement "bVar28 = DAT_00196f6c == 0;" (assignment_expression "bVar28 = DAT_00196f6c == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f6c == 0" (identifier "DAT_00196f6c") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!bVar28) {\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }" (if "if") (parenthesized_expression "(!bVar28)" (( "(") (unary_expression "!bVar28" (! "!") (identifier "bVar28")) () ")")) (compound_statement "{\n                            lVar20 = 7;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x1824f6;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);\n                            if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;\n                          }" ({ "{") (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" (identifier "lVar20") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1824f6;" (assignment_expression "pbVar21 = (byte *)0x1824f6" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1824f6" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1824f6"))) (; ";")) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar28);" (do "do") (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar25 = *pbVar9 < *pbVar21;\n                              bVar28 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if (((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))\n                            goto LAB_0012b3c0;" (if "if") (parenthesized_expression "(((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))" (( "(") (binary_expression "((!bVar25 && !bVar28) == bVar25) ||\n                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0)" (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25")) () ")")) (|| "||") (parenthesized_expression "(iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0)" (( "(") (comma_expression "iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0" (assignment_expression "iVar8 = strncmp((char *)pbVar18,"macro",5)" (identifier "iVar8") (= "=") (call_expression "strncmp((char *)pbVar18,"macro",5)" (identifier "strncmp") (argument_list "((char *)pbVar18,"macro",5)" (( "(") (cast_expression "(char *)pbVar18" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar18")) (, ",") (string_literal ""macro"" (" """) (string_content "macro") (" """)) (, ",") (number_literal "5") () ")")))) (, ",") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";"))) (} "}"))) (if_statement "if (((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))\n                          goto LAB_0012ad90;" (if "if") (parenthesized_expression "(((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))" (( "(") (binary_expression "((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&\n                             ((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))))" (parenthesized_expression "((((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0))))" (( "(") (binary_expression "(((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&\n                              ((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))" (parenthesized_expression "(((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))))))" (( "(") (binary_expression "((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&\n                               ((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))" (parenthesized_expression "((iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0))" (( "(") (binary_expression "(iVar7 == 0) ||\n                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)" (parenthesized_expression "(iVar7 == 0)" (( "(") (binary_expression "iVar7 == 0" (identifier "iVar7") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)" (( "(") (comma_expression "iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"str",3)" (identifier "iVar7") (= "=") (call_expression "strncmp((char *)pbVar18,"str",3)" (identifier "strncmp") (argument_list "((char *)pbVar18,"str",3)" (( "(") (cast_expression "(char *)pbVar18" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar18")) (, ",") (string_literal ""str"" (" """) (string_content "str") (" """)) (, ",") (number_literal "3") () ")")))) (, ",") (binary_expression "iVar7 != 0" (identifier "iVar7") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))" (( "(") (parenthesized_expression "(iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))))" (( "(") (binary_expression "iVar2 == 0 ||\n                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))" (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) (|| "||") (parenthesized_expression "((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))" (( "(") (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0))" (( "(") (comma_expression "iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"loc",3)" (identifier "iVar7") (= "=") (call_expression "strncmp((char *)pbVar18,"loc",3)" (identifier "strncmp") (argument_list "((char *)pbVar18,"loc",3)" (( "(") (cast_expression "(char *)pbVar18" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar18")) (, ",") (string_literal ""loc"" (" """) (string_content "loc") (" """)) (, ",") (number_literal "3") () ")")))) (, ",") (binary_expression "iVar7 != 0 &&\n                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" (binary_expression "iVar7 != 0" (identifier "iVar7") (!= "!=") (number_literal "0")) (&& "&&") (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)" (( "(") (comma_expression "iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"loclists",8)" (identifier "iVar7") (= "=") (call_expression "strncmp((char *)pbVar18,"loclists",8)" (identifier "strncmp") (argument_list "((char *)pbVar18,"loclists",8)" (( "(") (cast_expression "(char *)pbVar18" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar18")) (, ",") (string_literal ""loclists"" (" """) (string_content "loclists") (" """)) (, ",") (number_literal "8") () ")")))) (, ",") (binary_expression "iVar7 != 0" (identifier "iVar7") (!= "!=") (number_literal "0"))) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))" (( "(") (parenthesized_expression "(iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0))" (( "(") (binary_expression "iVar3 == 0 ||\n                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)" (binary_expression "iVar3 == 0" (identifier "iVar3") (== "==") (number_literal "0")) (|| "||") (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)" (( "(") (comma_expression "iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"addr",4)" (identifier "iVar7") (= "=") (call_expression "strncmp((char *)pbVar18,"addr",4)" (identifier "strncmp") (argument_list "((char *)pbVar18,"addr",4)" (( "(") (cast_expression "(char *)pbVar18" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar18")) (, ",") (string_literal ""addr"" (" """) (string_content "addr") (" """)) (, ",") (number_literal "4") () ")")))) (, ",") (binary_expression "iVar7 != 0" (identifier "iVar7") (!= "!=") (number_literal "0"))) () ")"))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))))" (( "(") (parenthesized_expression "(iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))" (( "(") (binary_expression "iVar4 == 0 ||\n                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))" (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) (|| "||") (parenthesized_expression "((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)))" (( "(") (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))" (( "(") (comma_expression "iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"cu_index",8)" (identifier "iVar7") (= "=") (call_expression "strncmp((char *)pbVar18,"cu_index",8)" (identifier "strncmp") (argument_list "((char *)pbVar18,"cu_index",8)" (( "(") (cast_expression "(char *)pbVar18" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar18")) (, ",") (string_literal ""cu_index"" (" """) (string_content "cu_index") (" """)) (, ",") (number_literal "8") () ")")))) (, ",") (binary_expression "iVar7 != 0 &&\n                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" (binary_expression "iVar7 != 0" (identifier "iVar7") (!= "!=") (number_literal "0")) (&& "&&") (parenthesized_expression "(iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0)" (( "(") (comma_expression "iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0" (assignment_expression "iVar7 = strncmp((char *)pbVar18,"tu_index",8)" (identifier "iVar7") (= "=") (call_expression "strncmp((char *)pbVar18,"tu_index",8)" (identifier "strncmp") (argument_list "((char *)pbVar18,"tu_index",8)" (( "(") (cast_expression "(char *)pbVar18" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar18")) (, ",") (string_literal ""tu_index"" (" """) (string_content "tu_index") (" """)) (, ",") (number_literal "8") () ")")))) (, ",") (binary_expression "iVar7 != 0" (identifier "iVar7") (!= "!=") (number_literal "0"))) () ")")))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_0012ad90;" (goto "goto") (statement_identifier "LAB_0012ad90") (; ";"))) (} "}")) (else_clause "else {\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" (else "else") (compound_statement "{\n                          lVar20 = 6;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x185a13;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);\n                          bVar26 = false;\n                          bVar25 = (!bVar25 && !bVar28) == bVar25;\n                          if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }\n                        }" ({ "{") (expression_statement "lVar20 = 6;" (assignment_expression "lVar20 = 6" (identifier "lVar20") (= "=") (number_literal "6")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x185a13;" (assignment_expression "pbVar21 = (byte *)0x185a13" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x185a13" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x185a13"))) (; ";")) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar28);" (do "do") (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar25 = *pbVar9 < *pbVar21;\n                            bVar28 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" (identifier "bVar26") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" (identifier "bVar25") (= "=") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25"))) (; ";")) (if_statement "if (!bVar25) {\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }" (if "if") (parenthesized_expression "(!bVar25)" (( "(") (unary_expression "!bVar25" (! "!") (identifier "bVar25")) () ")")) (compound_statement "{\n                            lVar20 = 8;\n                            pbVar9 = pbVar18;\n                            pbVar21 = (byte *)0x182607;\n                            do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);\n                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;\n                          }" ({ "{") (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" (identifier "lVar20") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x182607;" (assignment_expression "pbVar21 = (byte *)0x182607" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x182607" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x182607"))) (; ";")) (do_statement "do {\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            } while (bVar25);" (do "do") (compound_statement "{\n                              if (lVar20 == 0) break;\n                              lVar20 = lVar20 + -1;\n                              bVar26 = *pbVar9 < *pbVar21;\n                              bVar25 = *pbVar9 == *pbVar21;\n                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                            }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" (identifier "bVar26") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;" (if "if") (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" (( "(") (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" (( "(") (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" (! "!") (identifier "bVar26")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (!= "!=") (identifier "bVar26")) () ")")) (goto_statement "goto LAB_0012b547;" (goto "goto") (statement_identifier "LAB_0012b547") (; ";"))) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" (else "else") (compound_statement "{\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        bVar25 = (!bVar25 && !bVar28) == bVar25;\njoined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }\n                      }" ({ "{") (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" (identifier "lVar20") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1862bf;" (assignment_expression "pbVar21 = (byte *)0x1862bf" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1862bf" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1862bf"))) (; ";")) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);" (do "do") (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar9 < *pbVar21;\n                          bVar28 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" (identifier "bVar25") (= "=") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25"))) (; ";")) (labeled_statement "joined_r0x0012c500:\n                        if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" (statement_identifier "joined_r0x0012c500") (: ":") (if_statement "if (!bVar25) {\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" (if "if") (parenthesized_expression "(!bVar25)" (( "(") (unary_expression "!bVar25" (! "!") (identifier "bVar25")) () ")")) (compound_statement "{\n                          pcVar14 = ".debug_gnu_pubtypes";\nLAB_0012b4cb:\n                          bVar28 = false;\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)(pcVar14 + 7);\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;\n                        }" ({ "{") (expression_statement "pcVar14 = ".debug_gnu_pubtypes";" (assignment_expression "pcVar14 = ".debug_gnu_pubtypes"" (identifier "pcVar14") (= "=") (string_literal "".debug_gnu_pubtypes"" (" """) (string_content ".debug_gnu_pubtypes") (" """))) (; ";")) (labeled_statement "LAB_0012b4cb:\n                          bVar28 = false;" (statement_identifier "LAB_0012b4cb") (: ":") (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" (identifier "bVar28") (= "=") (false "false")) (; ";"))) (expression_statement "lVar20 = 0xc;" (assignment_expression "lVar20 = 0xc" (identifier "lVar20") (= "=") (number_literal "0xc")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)(pcVar14 + 7);" (assignment_expression "pbVar21 = (byte *)(pcVar14 + 7)" (identifier "pbVar21") (= "=") (cast_expression "(byte *)(pcVar14 + 7)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar14 + 7)" (( "(") (binary_expression "pcVar14 + 7" (identifier "pcVar14") (+ "+") (number_literal "7")) () ")")))) (; ";")) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);" (do "do") (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar28 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (if_statement "if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;" (if "if") (parenthesized_expression "((!bVar28 && !bVar25) != bVar28)" (( "(") (binary_expression "(!bVar28 && !bVar25) != bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" (( "(") (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" (! "!") (identifier "bVar28")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (!= "!=") (identifier "bVar28")) () ")")) (goto_statement "goto LAB_0012b4dd;" (goto "goto") (statement_identifier "LAB_0012b4dd") (; ";"))) (} "}")))) (} "}")))) (} "}")) (else_clause "else {\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" (else "else") (compound_statement "{\n                      lVar20 = 8;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x1862ac;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }\n                    }" ({ "{") (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" (identifier "lVar20") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1862ac;" (assignment_expression "pbVar21 = (byte *)0x1862ac" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1862ac" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1862ac"))) (; ";")) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" (do "do") (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar9 < *pbVar21;\n                        bVar28 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) != bVar25) {\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (!= "!=") (identifier "bVar25")) () ")")) (compound_statement "{\n                        pcVar14 = ".debug_gnu_pubnames";\n                        bVar28 = false;\n                        bVar25 = DAT_00196f68 == 0;\n                        if (bVar25) goto LAB_0012b4cb;\n                        lVar20 = 8;\n                        pbVar9 = pbVar18;\n                        pbVar21 = (byte *)0x1862bf;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);\n                        bVar26 = false;\n                        bVar25 = (!bVar28 && !bVar25) == bVar28;\n                        if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }\n                      }" ({ "{") (expression_statement "pcVar14 = ".debug_gnu_pubnames";" (assignment_expression "pcVar14 = ".debug_gnu_pubnames"" (identifier "pcVar14") (= "=") (string_literal "".debug_gnu_pubnames"" (" """) (string_content ".debug_gnu_pubnames") (" """))) (; ";")) (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" (identifier "bVar28") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = DAT_00196f68 == 0;" (assignment_expression "bVar25 = DAT_00196f68 == 0" (identifier "bVar25") (= "=") (binary_expression "DAT_00196f68 == 0" (identifier "DAT_00196f68") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar25) goto LAB_0012b4cb;" (if "if") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (goto_statement "goto LAB_0012b4cb;" (goto "goto") (statement_identifier "LAB_0012b4cb") (; ";"))) (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" (identifier "lVar20") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1862bf;" (assignment_expression "pbVar21 = (byte *)0x1862bf" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1862bf" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1862bf"))) (; ";")) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar25);" (do "do") (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar28 = *pbVar9 < *pbVar21;\n                          bVar25 = *pbVar9 == *pbVar21;\n                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" (identifier "bVar26") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" (identifier "bVar25") (= "=") (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" (( "(") (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" (! "!") (identifier "bVar28")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (== "==") (identifier "bVar28"))) (; ";")) (if_statement "if (!bVar25) {\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }" (if "if") (parenthesized_expression "(!bVar25)" (( "(") (unary_expression "!bVar25" (! "!") (identifier "bVar25")) () ")")) (compound_statement "{\n                          lVar20 = 0xc;\n                          pbVar9 = pbVar18;\n                          pbVar21 = (byte *)0x1824cd;\n                          do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);\n                          bVar25 = (!bVar26 && !bVar25) == bVar26;\n                          goto joined_r0x0012c500;\n                        }" ({ "{") (expression_statement "lVar20 = 0xc;" (assignment_expression "lVar20 = 0xc" (identifier "lVar20") (= "=") (number_literal "0xc")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1824cd;" (assignment_expression "pbVar21 = (byte *)0x1824cd" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1824cd" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1824cd"))) (; ";")) (do_statement "do {\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          } while (bVar25);" (do "do") (compound_statement "{\n                            if (lVar20 == 0) break;\n                            lVar20 = lVar20 + -1;\n                            bVar26 = *pbVar9 < *pbVar21;\n                            bVar25 = *pbVar9 == *pbVar21;\n                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                          }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" (identifier "bVar26") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (expression_statement "bVar25 = (!bVar26 && !bVar25) == bVar26;" (assignment_expression "bVar25 = (!bVar26 && !bVar25) == bVar26" (identifier "bVar25") (= "=") (binary_expression "(!bVar26 && !bVar25) == bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" (( "(") (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" (! "!") (identifier "bVar26")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (== "==") (identifier "bVar26"))) (; ";")) (goto_statement "goto joined_r0x0012c500;" (goto "goto") (statement_identifier "joined_r0x0012c500") (; ";")) (} "}"))) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" (else "else") (compound_statement "{\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x182493;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar26 = false;\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }\n                  }" ({ "{") (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" (identifier "lVar20") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x182493;" (assignment_expression "pbVar21 = (byte *)0x182493" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x182493" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x182493"))) (; ";")) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" (do "do") (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar9 < *pbVar21;\n                      bVar28 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar9 < *pbVar21;" (assignment_expression "bVar25 = *pbVar9 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar9 == *pbVar21;" (assignment_expression "bVar28 = *pbVar9 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" (identifier "bVar26") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" (identifier "bVar25") (= "=") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25"))) (; ";")) (if_statement "if (!bVar25) {\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }" (if "if") (parenthesized_expression "(!bVar25)" (( "(") (unary_expression "!bVar25" (! "!") (identifier "bVar25")) () ")")) (compound_statement "{\n                      lVar20 = 5;\n                      pbVar9 = pbVar18;\n                      pbVar21 = (byte *)0x16ac78;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);\n                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;\n                    }" ({ "{") (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" (identifier "lVar20") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x16ac78;" (assignment_expression "pbVar21 = (byte *)0x16ac78" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x16ac78" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x16ac78"))) (; ";")) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar25);" (do "do") (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar26 = *pbVar9 < *pbVar21;\n                        bVar25 = *pbVar9 == *pbVar21;\n                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" (identifier "bVar26") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;" (if "if") (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" (( "(") (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" (( "(") (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" (! "!") (identifier "bVar26")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (!= "!=") (identifier "bVar26")) () ")")) (goto_statement "goto LAB_0012b490;" (goto "goto") (statement_identifier "LAB_0012b490") (; ";"))) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" (else "else") (compound_statement "{\n                  lVar20 = 4;\n                  pbVar9 = pbVar18;\n                  pbVar21 = (byte *)0x1663a6;\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);\n                  bVar26 = false;\n                  bVar25 = (!bVar28 && !bVar25) == bVar28;\n                  if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }\n                }" ({ "{") (expression_statement "lVar20 = 4;" (assignment_expression "lVar20 = 4" (identifier "lVar20") (= "=") (number_literal "4")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1663a6;" (assignment_expression "pbVar21 = (byte *)0x1663a6" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1663a6" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1663a6"))) (; ";")) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar25);" (do "do") (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar28 = *pbVar9 < *pbVar21;\n                    bVar25 = *pbVar9 == *pbVar21;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar28 = *pbVar9 < *pbVar21;" (assignment_expression "bVar28 = *pbVar9 < *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" (identifier "bVar26") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" (identifier "bVar25") (= "=") (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" (( "(") (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" (! "!") (identifier "bVar28")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (== "==") (identifier "bVar28"))) (; ";")) (if_statement "if (!bVar25) {\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }" (if "if") (parenthesized_expression "(!bVar25)" (( "(") (unary_expression "!bVar25" (! "!") (identifier "bVar25")) () ")")) (compound_statement "{\n                    lVar20 = 5;\n                    pbVar9 = pbVar18;\n                    pbVar21 = (byte *)0x1857df;\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;\n                  }" ({ "{") (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" (identifier "lVar20") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar9 = pbVar18;" (assignment_expression "pbVar9 = pbVar18" (identifier "pbVar9") (= "=") (identifier "pbVar18")) (; ";")) (expression_statement "pbVar21 = (byte *)0x1857df;" (assignment_expression "pbVar21 = (byte *)0x1857df" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1857df" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1857df"))) (; ";")) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" (do "do") (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar9 < *pbVar21;\n                      bVar25 = *pbVar9 == *pbVar21;\n                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar26 = *pbVar9 < *pbVar21;" (assignment_expression "bVar26 = *pbVar9 < *pbVar21" (identifier "bVar26") (= "=") (binary_expression "*pbVar9 < *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar9 == *pbVar21;" (assignment_expression "bVar25 = *pbVar9 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 == *pbVar21" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;" (if "if") (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" (( "(") (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" (( "(") (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" (! "!") (identifier "bVar26")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (!= "!=") (identifier "bVar26")) () ")")) (goto_statement "goto LAB_0012b446;" (goto "goto") (statement_identifier "LAB_0012b446") (; ";"))) (} "}"))) (} "}")))) (} "}"))) (} "}")) (else_clause "else {\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" (else "else") (compound_statement "{\n              lVar20 = 8;\n              pbVar18 = pbVar9;\n              pbVar21 = (byte *)".zdebug_";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);\n              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;\n              bVar25 = false;\n              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;\n              if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }\n            }" ({ "{") (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" (identifier "lVar20") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".zdebug_";" (assignment_expression "pbVar21 = (byte *)".zdebug_"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".zdebug_"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".zdebug_"" (" """) (string_content ".zdebug_") (" """)))) (; ";")) (do_statement "do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              } while (bVar25);" (do "do") (compound_statement "{\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                bVar26 = *pbVar18 < *pbVar21;\n                bVar25 = *pbVar18 == *pbVar21;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n              }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar26 = *pbVar18 < *pbVar21;" (assignment_expression "bVar26 = *pbVar18 < *pbVar21" (identifier "bVar26") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (if_statement "if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;" (if "if") (parenthesized_expression "((!bVar26 && !bVar25) == bVar26)" (( "(") (binary_expression "(!bVar26 && !bVar25) == bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" (( "(") (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" (! "!") (identifier "bVar26")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (== "==") (identifier "bVar26")) () ")")) (goto_statement "goto LAB_0012b3f7;" (goto "goto") (statement_identifier "LAB_0012b3f7") (; ";"))) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";")) (expression_statement "bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;" (assignment_expression "bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f2c == 0 && DAT_0019346c == 0" (binary_expression "DAT_00196f2c == 0" (identifier "DAT_00196f2c") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_0019346c == 0" (identifier "DAT_0019346c") (== "==") (number_literal "0")))) (; ";")) (if_statement "if (bVar28) {\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }\n              else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (compound_statement "{\nLAB_0012b2b0:\n                bVar25 = false;\n                bVar28 = DAT_00196f34 == 0;\n                if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }\n                bVar25 = false;\n                bVar28 = DAT_00196f78 == 0;\n                if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }\n              }" ({ "{") (labeled_statement "LAB_0012b2b0:\n                bVar25 = false;" (statement_identifier "LAB_0012b2b0") (: ":") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";"))) (expression_statement "bVar28 = DAT_00196f34 == 0;" (assignment_expression "bVar28 = DAT_00196f34 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f34 == 0" (identifier "DAT_00196f34") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!bVar28) {\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }" (if "if") (parenthesized_expression "(!bVar28)" (( "(") (unary_expression "!bVar28" (! "!") (identifier "bVar28")) () ")")) (compound_statement "{\n                  lVar20 = 10;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".eh_frame";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                }" ({ "{") (expression_statement "lVar20 = 10;" (assignment_expression "lVar20 = 10" (identifier "lVar20") (= "=") (number_literal "10")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".eh_frame";" (assignment_expression "pbVar21 = (byte *)".eh_frame"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".eh_frame"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".eh_frame"" (" """) (string_content ".eh_frame") (" """)))) (; ";")) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);" (do "do") (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25")) () ")")) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";"))) (} "}"))) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";")) (expression_statement "bVar28 = DAT_00196f78 == 0;" (assignment_expression "bVar28 = DAT_00196f78 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f78 == 0" (identifier "DAT_00196f78") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar28) {\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }\n                else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (compound_statement "{\nLAB_0012b31e:\n                  bVar25 = false;\n                  bVar28 = DAT_0019346c == 0;\n                  if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);\n                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;\n                }" ({ "{") (labeled_statement "LAB_0012b31e:\n                  bVar25 = false;" (statement_identifier "LAB_0012b31e") (: ":") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";"))) (expression_statement "bVar28 = DAT_0019346c == 0;" (assignment_expression "bVar28 = DAT_0019346c == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_0019346c == 0" (identifier "DAT_0019346c") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar28) {\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }\n                  else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (compound_statement "{\n                    bVar25 = false;\n                    bVar28 = DAT_00196f64 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;\n                    if (bVar28) goto LAB_0012c5d2;\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;\nLAB_0012b36f:\n                    bVar25 = false;\n                    bVar28 = DAT_00196f58 == 0;\n                    if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }\n                    bVar26 = false;\n                    bVar25 = DAT_00196f4c == 0;\n                    if (bVar25) goto LAB_0012ad90;\n                    lVar20 = 8;\n                    pbVar9 = pbVar9 + 7;\n                    pcVar14 = (char *)(byte *)0x1826ce;\n                  }" ({ "{") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";")) (expression_statement "bVar28 = DAT_00196f64 == 0;" (assignment_expression "bVar28 = DAT_00196f64 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f64 == 0" (identifier "DAT_00196f64") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }" (if "if") (parenthesized_expression "(!bVar28)" (( "(") (unary_expression "!bVar28" (! "!") (identifier "bVar28")) () ")")) (compound_statement "{\n                      lVar20 = 7;\n                      pbVar18 = pbVar9;\n                      pbVar21 = (byte *)".trace_";\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }\nLAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;\n                      if (bVar25) goto LAB_0012ad90;\n                      goto LAB_0012c536;\n                    }" ({ "{") (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" (identifier "lVar20") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".trace_"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".trace_"" (" """) (string_content ".trace_") (" """)))) (; ";")) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" (do "do") (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) == bVar25) {\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25")) () ")")) (compound_statement "{\n                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;\n                        bVar28 = pbVar9 + 7 == (byte *)0x0;\n                        lVar20 = 5;\n                        pbVar18 = pbVar9 + 7;\n                        pbVar21 = (byte *)0x1663a6;\n                        do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);\n                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;\n                        goto LAB_0012b3c0;\n                      }" ({ "{") (expression_statement "bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;" (assignment_expression "bVar25 = (byte *)0xfffffffffffffff8 < pbVar9" (identifier "bVar25") (= "=") (binary_expression "(byte *)0xfffffffffffffff8 < pbVar9" (cast_expression "(byte *)0xfffffffffffffff8" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xfffffffffffffff8")) (< "<") (identifier "pbVar9"))) (; ";")) (expression_statement "bVar28 = pbVar9 + 7 == (byte *)0x0;" (assignment_expression "bVar28 = pbVar9 + 7 == (byte *)0x0" (identifier "bVar28") (= "=") (binary_expression "pbVar9 + 7 == (byte *)0x0" (binary_expression "pbVar9 + 7" (identifier "pbVar9") (+ "+") (number_literal "7")) (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (expression_statement "lVar20 = 5;" (assignment_expression "lVar20 = 5" (identifier "lVar20") (= "=") (number_literal "5")) (; ";")) (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" (identifier "pbVar18") (= "=") (binary_expression "pbVar9 + 7" (identifier "pbVar9") (+ "+") (number_literal "7"))) (; ";")) (expression_statement "pbVar21 = (byte *)0x1663a6;" (assignment_expression "pbVar21 = (byte *)0x1663a6" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1663a6" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1663a6"))) (; ";")) (do_statement "do {\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        } while (bVar28);" (do "do") (compound_statement "{\n                          if (lVar20 == 0) break;\n                          lVar20 = lVar20 + -1;\n                          bVar25 = *pbVar18 < *pbVar21;\n                          bVar28 = *pbVar18 == *pbVar21;\n                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                        }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (!= "!=") (identifier "bVar25")) () ")")) (goto_statement "goto LAB_0012b36f;" (goto "goto") (statement_identifier "LAB_0012b36f") (; ";"))) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";")) (} "}"))) (labeled_statement "LAB_0012c5d2:\n                      bVar25 = DAT_00196f74 == 0;" (statement_identifier "LAB_0012c5d2") (: ":") (expression_statement "bVar25 = DAT_00196f74 == 0;" (assignment_expression "bVar25 = DAT_00196f74 == 0" (identifier "bVar25") (= "=") (binary_expression "DAT_00196f74 == 0" (identifier "DAT_00196f74") (== "==") (number_literal "0"))) (; ";"))) (if_statement "if (bVar25) goto LAB_0012ad90;" (if "if") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (goto_statement "goto LAB_0012ad90;" (goto "goto") (statement_identifier "LAB_0012ad90") (; ";"))) (goto_statement "goto LAB_0012c536;" (goto "goto") (statement_identifier "LAB_0012c536") (; ";")) (} "}"))) (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";")) (expression_statement "bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;" (assignment_expression "bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f58 == 0 && DAT_00196f4c == 0" (binary_expression "DAT_00196f58 == 0" (identifier "DAT_00196f58") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_00196f4c == 0" (identifier "DAT_00196f4c") (== "==") (number_literal "0")))) (; ";")) (if_statement "if (bVar28) goto LAB_0012c5d2;" (if "if") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (goto_statement "goto LAB_0012c5d2;" (goto "goto") (statement_identifier "LAB_0012c5d2") (; ";"))) (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" (identifier "lVar20") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".trace_"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".trace_"" (" """) (string_content ".trace_") (" """)))) (; ";")) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" (do "do") (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (!= "!=") (identifier "bVar25")) () ")")) (goto_statement "goto LAB_0012c5d2;" (goto "goto") (statement_identifier "LAB_0012c5d2") (; ";"))) (labeled_statement "LAB_0012b36f:\n                    bVar25 = false;" (statement_identifier "LAB_0012b36f") (: ":") (expression_statement "bVar25 = false;" (assignment_expression "bVar25 = false" (identifier "bVar25") (= "=") (false "false")) (; ";"))) (expression_statement "bVar28 = DAT_00196f58 == 0;" (assignment_expression "bVar28 = DAT_00196f58 == 0" (identifier "bVar28") (= "=") (binary_expression "DAT_00196f58 == 0" (identifier "DAT_00196f58") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!bVar28) {\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }" (if "if") (parenthesized_expression "(!bVar28)" (( "(") (unary_expression "!bVar28" (! "!") (identifier "bVar28")) () ")")) (compound_statement "{\n                      lVar20 = 7;\n                      pbVar18 = pbVar9 + 7;\n                      pbVar21 = (byte *)0x1826c0;\n                      do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);\n                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;\n                    }" ({ "{") (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" (identifier "lVar20") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar18 = pbVar9 + 7;" (assignment_expression "pbVar18 = pbVar9 + 7" (identifier "pbVar18") (= "=") (binary_expression "pbVar9 + 7" (identifier "pbVar9") (+ "+") (number_literal "7"))) (; ";")) (expression_statement "pbVar21 = (byte *)0x1826c0;" (assignment_expression "pbVar21 = (byte *)0x1826c0" (identifier "pbVar21") (= "=") (cast_expression "(byte *)0x1826c0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1826c0"))) (; ";")) (do_statement "do {\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      } while (bVar28);" (do "do") (compound_statement "{\n                        if (lVar20 == 0) break;\n                        lVar20 = lVar20 + -1;\n                        bVar25 = *pbVar18 < *pbVar21;\n                        bVar28 = *pbVar18 == *pbVar21;\n                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                      }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) == bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25")) () ")")) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";"))) (} "}"))) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" (identifier "bVar26") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = DAT_00196f4c == 0;" (assignment_expression "bVar25 = DAT_00196f4c == 0" (identifier "bVar25") (= "=") (binary_expression "DAT_00196f4c == 0" (identifier "DAT_00196f4c") (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar25) goto LAB_0012ad90;" (if "if") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (goto_statement "goto LAB_0012ad90;" (goto "goto") (statement_identifier "LAB_0012ad90") (; ";"))) (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" (identifier "lVar20") (= "=") (number_literal "8")) (; ";")) (expression_statement "pbVar9 = pbVar9 + 7;" (assignment_expression "pbVar9 = pbVar9 + 7" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 7" (identifier "pbVar9") (+ "+") (number_literal "7"))) (; ";")) (expression_statement "pcVar14 = (char *)(byte *)0x1826ce;" (assignment_expression "pcVar14 = (char *)(byte *)0x1826ce" (identifier "pcVar14") (= "=") (cast_expression "(char *)(byte *)0x1826ce" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(byte *)0x1826ce" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1826ce")))) (; ";")) (} "}")) (else_clause "else {\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" (else "else") (compound_statement "{\n                    lVar20 = 7;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".trace_";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);\n                    bVar25 = (!bVar25 && !bVar28) == bVar25;\n                    if (bVar25) goto LAB_0012b3c0;\nLAB_0012c536:\n                    bVar28 = false;\n                    lVar20 = 0xe;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".gnu_debuglink";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    bVar26 = false;\n                    bVar25 = (!bVar28 && !bVar25) == bVar28;\n                    if (bVar25) goto LAB_0012b3c0;\n                    lVar20 = 0x11;\n                    pcVar14 = ".gnu_debugaltlink";\n                  }" ({ "{") (expression_statement "lVar20 = 7;" (assignment_expression "lVar20 = 7" (identifier "lVar20") (= "=") (number_literal "7")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".trace_";" (assignment_expression "pbVar21 = (byte *)".trace_"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".trace_"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".trace_"" (" """) (string_content ".trace_") (" """)))) (; ";")) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar28);" (do "do") (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar25 = *pbVar18 < *pbVar21;\n                      bVar28 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" (identifier "bVar25") (= "=") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25"))) (; ";")) (if_statement "if (bVar25) goto LAB_0012b3c0;" (if "if") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";"))) (labeled_statement "LAB_0012c536:\n                    bVar28 = false;" (statement_identifier "LAB_0012c536") (: ":") (expression_statement "bVar28 = false;" (assignment_expression "bVar28 = false" (identifier "bVar28") (= "=") (false "false")) (; ";"))) (expression_statement "lVar20 = 0xe;" (assignment_expression "lVar20 = 0xe" (identifier "lVar20") (= "=") (number_literal "0xe")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".gnu_debuglink";" (assignment_expression "pbVar21 = (byte *)".gnu_debuglink"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".gnu_debuglink"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".gnu_debuglink"" (" """) (string_content ".gnu_debuglink") (" """)))) (; ";")) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" (do "do") (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar28 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar28 = *pbVar18 < *pbVar21;" (assignment_expression "bVar28 = *pbVar18 < *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" (identifier "bVar26") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = (!bVar28 && !bVar25) == bVar28;" (assignment_expression "bVar25 = (!bVar28 && !bVar25) == bVar28" (identifier "bVar25") (= "=") (binary_expression "(!bVar28 && !bVar25) == bVar28" (parenthesized_expression "(!bVar28 && !bVar25)" (( "(") (binary_expression "!bVar28 && !bVar25" (unary_expression "!bVar28" (! "!") (identifier "bVar28")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (== "==") (identifier "bVar28"))) (; ";")) (if_statement "if (bVar25) goto LAB_0012b3c0;" (if "if") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (goto_statement "goto LAB_0012b3c0;" (goto "goto") (statement_identifier "LAB_0012b3c0") (; ";"))) (expression_statement "lVar20 = 0x11;" (assignment_expression "lVar20 = 0x11" (identifier "lVar20") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "pcVar14 = ".gnu_debugaltlink";" (assignment_expression "pcVar14 = ".gnu_debugaltlink"" (identifier "pcVar14") (= "=") (string_literal "".gnu_debugaltlink"" (" """) (string_content ".gnu_debugaltlink") (" """))) (; ";")) (} "}")))) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  } while (bVar25);" (do "do") (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar26 = *pbVar9 < (byte)*pcVar14;\n                    bVar25 = *pbVar9 == *pcVar14;\n                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);\n                  }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar26 = *pbVar9 < (byte)*pcVar14;" (assignment_expression "bVar26 = *pbVar9 < (byte)*pcVar14" (identifier "bVar26") (= "=") (binary_expression "*pbVar9 < (byte)*pcVar14" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (binary_expression "(byte)*pcVar14" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (* "*") (identifier "pcVar14")))) (; ";")) (expression_statement "bVar25 = *pbVar9 == *pcVar14;" (assignment_expression "bVar25 = *pbVar9 == *pcVar14" (identifier "bVar25") (= "=") (binary_expression "*pbVar9 == *pcVar14" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);" (assignment_expression "pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" (identifier "pcVar14") (= "=") (cast_expression "(char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((byte *)pcVar14 + (ulong)bVar30 * -2 + 1)" (( "(") (binary_expression "(byte *)pcVar14 + (ulong)bVar30 * -2 + 1" (binary_expression "(byte *)pcVar14 + (ulong)bVar30 * -2" (cast_expression "(byte *)pcVar14" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar14")) (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;" (if "if") (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" (( "(") (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" (( "(") (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" (! "!") (identifier "bVar26")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (!= "!=") (identifier "bVar26")) () ")")) (goto_statement "goto LAB_0012ad90;" (goto "goto") (statement_identifier "LAB_0012ad90") (; ";"))) (} "}")) (else_clause "else {\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" (else "else") (compound_statement "{\n                  lVar20 = 0xb;\n                  pbVar18 = pbVar9;\n                  pbVar21 = (byte *)".gdb_index";\n                  do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);\n                  bVar26 = false;\n                  bVar25 = (!bVar25 && !bVar28) == bVar25;\n                  if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }\n                }" ({ "{") (expression_statement "lVar20 = 0xb;" (assignment_expression "lVar20 = 0xb" (identifier "lVar20") (= "=") (number_literal "0xb")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".gdb_index";" (assignment_expression "pbVar21 = (byte *)".gdb_index"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".gdb_index"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".gdb_index"" (" """) (string_content ".gdb_index") (" """)))) (; ";")) (do_statement "do {\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  } while (bVar28);" (do "do") (compound_statement "{\n                    if (lVar20 == 0) break;\n                    lVar20 = lVar20 + -1;\n                    bVar25 = *pbVar18 < *pbVar21;\n                    bVar28 = *pbVar18 == *pbVar21;\n                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                  }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (expression_statement "bVar26 = false;" (assignment_expression "bVar26 = false" (identifier "bVar26") (= "=") (false "false")) (; ";")) (expression_statement "bVar25 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "bVar25 = (!bVar25 && !bVar28) == bVar25" (identifier "bVar25") (= "=") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25"))) (; ";")) (if_statement "if (!bVar25) {\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }" (if "if") (parenthesized_expression "(!bVar25)" (( "(") (unary_expression "!bVar25" (! "!") (identifier "bVar25")) () ")")) (compound_statement "{\n                    lVar20 = 0xd;\n                    pbVar18 = pbVar9;\n                    pbVar21 = (byte *)".debug_names";\n                    do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);\n                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;\n                  }" ({ "{") (expression_statement "lVar20 = 0xd;" (assignment_expression "lVar20 = 0xd" (identifier "lVar20") (= "=") (number_literal "0xd")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".debug_names";" (assignment_expression "pbVar21 = (byte *)".debug_names"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".debug_names"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".debug_names"" (" """) (string_content ".debug_names") (" """)))) (; ";")) (do_statement "do {\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    } while (bVar25);" (do "do") (compound_statement "{\n                      if (lVar20 == 0) break;\n                      lVar20 = lVar20 + -1;\n                      bVar26 = *pbVar18 < *pbVar21;\n                      bVar25 = *pbVar18 == *pbVar21;\n                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                    }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar26 = *pbVar18 < *pbVar21;" (assignment_expression "bVar26 = *pbVar18 < *pbVar21" (identifier "bVar26") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar25 = *pbVar18 == *pbVar21;" (assignment_expression "bVar25 = *pbVar18 == *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar25)" (( "(") (identifier "bVar25") () ")")) (; ";")) (if_statement "if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;" (if "if") (parenthesized_expression "((!bVar26 && !bVar25) != bVar26)" (( "(") (binary_expression "(!bVar26 && !bVar25) != bVar26" (parenthesized_expression "(!bVar26 && !bVar25)" (( "(") (binary_expression "!bVar26 && !bVar25" (unary_expression "!bVar26" (! "!") (identifier "bVar26")) (&& "&&") (unary_expression "!bVar25" (! "!") (identifier "bVar25"))) () ")")) (!= "!=") (identifier "bVar26")) () ")")) (goto_statement "goto LAB_0012b31e;" (goto "goto") (statement_identifier "LAB_0012b31e") (; ";"))) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" (else "else") (compound_statement "{\n                lVar20 = 0x11;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".gnu.linkonce.wi.";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;\n              }" ({ "{") (expression_statement "lVar20 = 0x11;" (assignment_expression "lVar20 = 0x11" (identifier "lVar20") (= "=") (number_literal "0x11")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".gnu.linkonce.wi.";" (assignment_expression "pbVar21 = (byte *)".gnu.linkonce.wi."" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".gnu.linkonce.wi."" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".gnu.linkonce.wi."" (" """) (string_content ".gnu.linkonce.wi.") (" """)))) (; ";")) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);" (do "do") (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (if_statement "if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;" (if "if") (parenthesized_expression "((!bVar25 && !bVar28) != bVar25)" (( "(") (binary_expression "(!bVar25 && !bVar28) != bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (!= "!=") (identifier "bVar25")) () ")")) (goto_statement "goto LAB_0012b2b0;" (goto "goto") (statement_identifier "LAB_0012b2b0") (; ";"))) (} "}")))) (} "}")))) (labeled_statement "LAB_0012b3c0:\n            FUN_00111440(param_1,uVar22,4);" (statement_identifier "LAB_0012b3c0") (: ":") (expression_statement "FUN_00111440(param_1,uVar22,4);" (call_expression "FUN_00111440(param_1,uVar22,4)" (identifier "FUN_00111440") (argument_list "(param_1,uVar22,4)" (( "(") (identifier "param_1") (, ",") (identifier "uVar22") (, ",") (number_literal "4") () ")"))) (; ";"))) (} "}")))) (} "}")) (else_clause "else if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (else "else") (if_statement "if (uVar16 == 0x12) {\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }\n        else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (if "if") (parenthesized_expression "(uVar16 == 0x12)" (( "(") (binary_expression "uVar16 == 0x12" (identifier "uVar16") (== "==") (number_literal "0x12")) () ")")) (compound_statement "{\n          puVar11 = (undefined8 *)FUN_001594b0();\n          *puVar11 = puVar24;\n          puVar11[1] = DAT_001934b0;\n          DAT_001934b0 = puVar11;\n        }" ({ "{") (expression_statement "puVar11 = (undefined8 *)FUN_001594b0();" (assignment_expression "puVar11 = (undefined8 *)FUN_001594b0()" (identifier "puVar11") (= "=") (cast_expression "(undefined8 *)FUN_001594b0()" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_001594b0()" (identifier "FUN_001594b0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "*puVar11 = puVar24;" (assignment_expression "*puVar11 = puVar24" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (= "=") (identifier "puVar24")) (; ";")) (expression_statement "puVar11[1] = DAT_001934b0;" (assignment_expression "puVar11[1] = DAT_001934b0" (subscript_expression "puVar11[1]" (identifier "puVar11") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "DAT_001934b0")) (; ";")) (expression_statement "DAT_001934b0 = puVar11;" (assignment_expression "DAT_001934b0 = puVar11" (identifier "DAT_001934b0") (= "=") (identifier "puVar11")) (; ";")) (} "}")) (else_clause "else if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (else "else") (if_statement "if (uVar16 == 2) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }\n        else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (if "if") (parenthesized_expression "(uVar16 == 2)" (( "(") (binary_expression "uVar16 == 2" (identifier "uVar16") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" ({ "{") (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10" (identifier "lVar20") (= "=") (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(-(uint)(DAT_0019345c == 0) & 8)" (( "(") (binary_expression "-(uint)(DAT_0019345c == 0) & 8" (unary_expression "-(uint)(DAT_0019345c == 0)" (- "-") (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(DAT_0019345c == 0)" (( "(") (binary_expression "DAT_0019345c == 0" (identifier "DAT_0019345c") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "8")) () ")"))) (+ "+") (number_literal "0x10"))) (; ";")) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;" (if "if") (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" (( "(") (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" (* "*") (cast_expression "(long *)(puVar24 + 0xe)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (identifier "lVar20")) () ")")) (goto_statement "goto LAB_0012b6ee;" (goto "goto") (statement_identifier "LAB_0012b6ee") (; ";"))) (} "}")) (else_clause "else if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (else "else") (if_statement "if (uVar16 == 0x11) {\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }\n        else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (if "if") (parenthesized_expression "(uVar16 == 0x11)" (( "(") (binary_expression "uVar16 == 0x11" (identifier "uVar16") (== "==") (number_literal "0x11")) () ")")) (compound_statement "{\n          if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }\n        }" ({ "{") (if_statement "if (*(long *)(puVar24 + 0xe) != 4) {\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }" (if "if") (parenthesized_expression "(*(long *)(puVar24 + 0xe) != 4)" (( "(") (binary_expression "*(long *)(puVar24 + 0xe) != 4" (pointer_expression "*(long *)(puVar24 + 0xe)" (* "*") (cast_expression "(long *)(puVar24 + 0xe)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (number_literal "4")) () ")")) (compound_statement "{\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,4);\n            puVar24[0xe] = 4;\n            puVar24[0xf] = 0;\n          }" ({ "{") (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" (identifier "sprintf") (argument_list "((char *)local_68,"%016lx")" (( "(") (cast_expression "(char *)local_68" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_68")) (, ",") (string_literal ""%016lx"" (" """) (string_content "%016lx") (" """)) () ")"))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" (identifier "dcgettext") (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Section %d has invalid sh_entsize of %s\n"" (" """) (string_content "Section %d has invalid sh_entsize of %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar12,uVar22,local_68);" (call_expression "error(uVar12,uVar22,local_68)" (identifier "error") (argument_list "(uVar12,uVar22,local_68)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar22") (, ",") (identifier "local_68") () ")"))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (identifier "dcgettext") (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" (" """) (string_content "(Using the expected size of %u for the rest of this dump)") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar12,4);" (call_expression "error(uVar12,4)" (identifier "error") (argument_list "(uVar12,4)" (( "(") (identifier "uVar12") (, ",") (number_literal "4") () ")"))) (; ";")) (expression_statement "puVar24[0xe] = 4;" (assignment_expression "puVar24[0xe] = 4" (subscript_expression "puVar24[0xe]" (identifier "puVar24") ([ "[") (number_literal "0xe") (] "]")) (= "=") (number_literal "4")) (; ";")) (expression_statement "puVar24[0xf] = 0;" (assignment_expression "puVar24[0xf] = 0" (subscript_expression "puVar24[0xf]" (identifier "puVar24") ([ "[") (number_literal "0xf") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}")) (else_clause "else if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (else "else") (if_statement "if (uVar16 == 9) {\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }\n        else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (if "if") (parenthesized_expression "(uVar16 == 9)" (( "(") (binary_expression "uVar16 == 9" (identifier "uVar16") (== "==") (number_literal "9")) () ")")) (compound_statement "{\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;\n          if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }\n        }" ({ "{") (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8" (identifier "lVar20") (= "=") (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 8)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(-(uint)(DAT_0019345c == 0) & 8)" (( "(") (binary_expression "-(uint)(DAT_0019345c == 0) & 8" (unary_expression "-(uint)(DAT_0019345c == 0)" (- "-") (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(DAT_0019345c == 0)" (( "(") (binary_expression "DAT_0019345c == 0" (identifier "DAT_0019345c") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "8")) () ")"))) (+ "+") (number_literal "8"))) (; ";")) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) {\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }" (if "if") (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" (( "(") (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" (* "*") (cast_expression "(long *)(puVar24 + 0xe)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (identifier "lVar20")) () ")")) (compound_statement "{\nLAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");\n            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);\n            error(uVar12,uVar22,local_68);\n            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);\n            error(uVar12,lVar20);\n            *(long *)(puVar24 + 0xe) = lVar20;\n          }" ({ "{") (labeled_statement "LAB_0012b6ee:\n            sprintf((char *)local_68,"%016lx");" (statement_identifier "LAB_0012b6ee") (: ":") (expression_statement "sprintf((char *)local_68,"%016lx");" (call_expression "sprintf((char *)local_68,"%016lx")" (identifier "sprintf") (argument_list "((char *)local_68,"%016lx")" (( "(") (cast_expression "(char *)local_68" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_68")) (, ",") (string_literal ""%016lx"" (" """) (string_content "%016lx") (" """)) () ")"))) (; ";"))) (expression_statement "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5)" (identifier "dcgettext") (argument_list "(0,"Section %d has invalid sh_entsize of %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Section %d has invalid sh_entsize of %s\n"" (" """) (string_content "Section %d has invalid sh_entsize of %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar12,uVar22,local_68);" (call_expression "error(uVar12,uVar22,local_68)" (identifier "error") (argument_list "(uVar12,uVar22,local_68)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar22") (, ",") (identifier "local_68") () ")"))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);" (assignment_expression "uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (identifier "dcgettext") (argument_list "(0,"(Using the expected size of %u for the rest of this dump)\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""(Using the expected size of %u for the rest of this dump)\n"" (" """) (string_content "(Using the expected size of %u for the rest of this dump)") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar12,lVar20);" (call_expression "error(uVar12,lVar20)" (identifier "error") (argument_list "(uVar12,lVar20)" (( "(") (identifier "uVar12") (, ",") (identifier "lVar20") () ")"))) (; ";")) (expression_statement "*(long *)(puVar24 + 0xe) = lVar20;" (assignment_expression "*(long *)(puVar24 + 0xe) = lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" (* "*") (cast_expression "(long *)(puVar24 + 0xe)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (= "=") (identifier "lVar20")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" (else "else") (compound_statement "{\n          if (uVar16 != 4) goto LAB_0012b1ff;\n          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;\n          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;\n        }" ({ "{") (if_statement "if (uVar16 != 4) goto LAB_0012b1ff;" (if "if") (parenthesized_expression "(uVar16 != 4)" (( "(") (binary_expression "uVar16 != 4" (identifier "uVar16") (!= "!=") (number_literal "4")) () ")")) (goto_statement "goto LAB_0012b1ff;" (goto "goto") (statement_identifier "LAB_0012b1ff") (; ";"))) (expression_statement "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;" (assignment_expression "lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc" (identifier "lVar20") (= "=") (binary_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc" (call_expression "(ulong)(-(uint)(DAT_0019345c == 0) & 0xc)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(-(uint)(DAT_0019345c == 0) & 0xc)" (( "(") (binary_expression "-(uint)(DAT_0019345c == 0) & 0xc" (unary_expression "-(uint)(DAT_0019345c == 0)" (- "-") (call_expression "(uint)(DAT_0019345c == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(DAT_0019345c == 0)" (( "(") (binary_expression "DAT_0019345c == 0" (identifier "DAT_0019345c") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "0xc")) () ")"))) (+ "+") (number_literal "0xc"))) (; ";")) (if_statement "if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;" (if "if") (parenthesized_expression "(*(long *)(puVar24 + 0xe) != lVar20)" (( "(") (binary_expression "*(long *)(puVar24 + 0xe) != lVar20" (pointer_expression "*(long *)(puVar24 + 0xe)" (* "*") (cast_expression "(long *)(puVar24 + 0xe)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (!= "!=") (identifier "lVar20")) () ")")) (goto_statement "goto LAB_0012b6ee;" (goto "goto") (statement_identifier "LAB_0012b6ee") (; ";"))) (} "}")))))))))))) (} "}")))) (labeled_statement "LAB_0012ad90:\n      uVar22 = uVar22 + 1;" (statement_identifier "LAB_0012ad90") (: ":") (expression_statement "uVar22 = uVar22 + 1;" (assignment_expression "uVar22 = uVar22 + 1" (identifier "uVar22") (= "=") (binary_expression "uVar22 + 1" (identifier "uVar22") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" (identifier "puVar24") (= "=") (binary_expression "puVar24 + 0x14" (identifier "puVar24") (+ "+") (number_literal "0x14"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" (( "(") (binary_expression "uVar22 < *(uint *)(param_1 + 100)" (identifier "uVar22") (< "<") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) () ")")) (; ";")) (if_statement "if (DAT_00193494 == 0) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(DAT_00193494 == 0)" (( "(") (binary_expression "DAT_00193494 == 0" (identifier "DAT_00193494") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (if_statement "if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;" (if "if") (parenthesized_expression "(*(uint *)(param_1 + 100) < 2)" (( "(") (binary_expression "*(uint *)(param_1 + 100) < 2" (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")")))) (< "<") (number_literal "2")) () ")")) (goto_statement "goto LAB_0012c296;" (goto "goto") (statement_identifier "LAB_0012c296") (; ";"))) (expression_statement "pcVar14 = "\nSection Headers:\n";" (assignment_expression "pcVar14 = "\nSection Headers:\n"" (identifier "pcVar14") (= "=") (string_literal ""\nSection Headers:\n"" (" """) (escape_sequence "\n") (string_content "Section Headers:") (escape_sequence "\n") (" """))) (; ";")) (} "}"))))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,pcVar14,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar14,5)" (identifier "dcgettext") (argument_list "(0,pcVar14,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar14") (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (if_statement "if (DAT_0019345c == 0) {\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }\n  else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" (if "if") (parenthesized_expression "(DAT_0019345c == 0)" (( "(") (binary_expression "DAT_0019345c == 0" (identifier "DAT_0019345c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }\n  }" ({ "{") (if_statement "if (DAT_00196f50 == 0) {\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }\n    else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" (if "if") (parenthesized_expression "(DAT_00196f50 == 0)" (( "(") (binary_expression "DAT_00196f50 == 0" (identifier "DAT_00196f50") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }\n    }" ({ "{") (if_statement "if (DAT_0019348c == 0) {\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }\n      else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";\n      }" ({ "{") (expression_statement "pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" (identifier "dcgettext") (argument_list "(0,\n                                    "  [Nr] Name              Type             Address           Offset\n"\n                                    ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""  [Nr] Name              Type             Address           Offset\n"" (" """) (string_content "  [Nr] Name              Type             Address           Offset") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (expression_statement "pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";" (assignment_expression "pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n"" (identifier "pcVar14") (= "=") (string_literal ""       Size              EntSize          Flags  Link  Info  Align\n"" (" """) (string_content "       Size              EntSize          Flags  Link  Info  Align") (escape_sequence "\n") (" """))) (; ";")) (} "}")) (else_clause "else {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" (else "else") (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);\n        printf(pcVar14);\n        pcVar14 = "       Size              EntSize          Info              Align\n";\n      }" ({ "{") (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  [Nr] Name\n",5)" (identifier "dcgettext") (argument_list "(0,"  [Nr] Name\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  [Nr] Name\n"" (" """) (string_content "  [Nr] Name") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (expression_statement "pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" (identifier "dcgettext") (argument_list "(0,\n                                    "       Type              Address          Offset            Link\n"\n                                    ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""       Type              Address          Offset            Link\n"" (" """) (string_content "       Type              Address          Offset            Link") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (expression_statement "pcVar14 = "       Size              EntSize          Info              Align\n";" (assignment_expression "pcVar14 = "       Size              EntSize          Info              Align\n"" (identifier "pcVar14") (= "=") (string_literal ""       Size              EntSize          Info              Align\n"" (" """) (string_content "       Size              EntSize          Info              Align") (escape_sequence "\n") (" """))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" (else "else") (compound_statement "{\n      pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";\n      if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }\n    }" ({ "{") (expression_statement "pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";" (assignment_expression "pcVar14 = \n      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"" (identifier "pcVar14") (= "=") (string_literal ""  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n"" (" """) (string_content "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al") (escape_sequence "\n") (" """))) (; ";")) (if_statement "if (DAT_0019348c != 0) {\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }" (if "if") (parenthesized_expression "(DAT_0019348c != 0)" (( "(") (binary_expression "DAT_0019348c != 0" (identifier "DAT_0019348c") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n        printf(pcVar14);\n        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";\n      }" ({ "{") (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  [Nr] Name\n",5)" (identifier "dcgettext") (argument_list "(0,"  [Nr] Name\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  [Nr] Name\n"" (" """) (string_content "  [Nr] Name") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (expression_statement "pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";" (assignment_expression "pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n"" (identifier "pcVar14") (= "=") (string_literal ""       Type            Address          Off    Size   ES   Lk Inf Al\n"" (" """) (string_content "       Type            Address          Off    Size   ES   Lk Inf Al") (escape_sequence "\n") (" """))) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" (else "else") (compound_statement "{\n    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";\n    if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }\n  }" ({ "{") (expression_statement "pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";" (assignment_expression "pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"" (identifier "pcVar14") (= "=") (string_literal ""  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n"" (" """) (string_content "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al") (escape_sequence "\n") (" """))) (; ";")) (if_statement "if (DAT_0019348c != 0) {\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }" (if "if") (parenthesized_expression "(DAT_0019348c != 0)" (( "(") (binary_expression "DAT_0019348c != 0" (identifier "DAT_0019348c") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);\n      printf(pcVar14);\n      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";\n    }" ({ "{") (expression_statement "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,"  [Nr] Name\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  [Nr] Name\n",5)" (identifier "dcgettext") (argument_list "(0,"  [Nr] Name\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  [Nr] Name\n"" (" """) (string_content "  [Nr] Name") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (expression_statement "pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";" (assignment_expression "pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n"" (identifier "pcVar14") (= "=") (string_literal ""       Type            Addr     Off    Size   ES   Lk Inf Al\n"" (" """) (string_content "       Type            Addr     Off    Size   ES   Lk Inf Al") (escape_sequence "\n") (" """))) (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,pcVar14,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar14,5)" (identifier "dcgettext") (argument_list "(0,pcVar14,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar14") (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (if_statement "if (DAT_0019348c == 0) {\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }\n  else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }\n  }" ({ "{") (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) (; ";")) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" (identifier "puVar24") (= "=") (pointer_expression "*(uint **)(param_1 + 0x70)" (* "*") (cast_expression "(uint **)(param_1 + 0x70)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (if_statement "if (uVar22 != 0) {\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }" (if "if") (parenthesized_expression "(uVar22 != 0)" (( "(") (binary_expression "uVar22 != 0" (identifier "uVar22") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0012ae50:\n      uVar17 = 0;\nLAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);\n      goto LAB_0012bca8;\n    }" ({ "{") (labeled_statement "LAB_0012ae50:\n      uVar17 = 0;" (statement_identifier "LAB_0012ae50") (: ":") (expression_statement "uVar17 = 0;" (assignment_expression "uVar17 = 0" (identifier "uVar17") (= "=") (number_literal "0")) (; ";"))) (labeled_statement "LAB_0012b043:\n      do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);" (statement_identifier "LAB_0012b043") (: ":") (do_statement "do {\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      } while (uVar16 < uVar22);" (do "do") (compound_statement "{\n        uVar16 = puVar24[1];\n        if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }\n        if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }\njoined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;\n        uVar10 = *(ulong *)(puVar24 + 2);\n        if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }\nLAB_0012aef0:\n        printf("  [%2u] ",uVar17);\n        if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }\n        uVar12 = FUN_001176d0(param_1,puVar24[1]);\n        pcVar14 = " %-15.15s ";\n        if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }\n        printf(pcVar14,uVar12);\n        if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }\n        if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }\n        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n        printf("       %s\n",uVar12);\n        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;\n        uVar12 = dcgettext(0,"compression header",5);\n        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);\n        if (lVar20 == 0) goto LAB_0012b030;\n        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);\n        uVar22 = local_68[0];\n        if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }\n        uVar16 = (int)uVar17 + 1;\n        uVar17 = (ulong)uVar16;\n        puVar24 = puVar24 + 0x14;\n        FUN_001116b0(local_60,6);\n        printf(", %lu\n",local_58);\n        uVar22 = *(uint *)(param_1 + 100);\n      }" ({ "{") (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" (identifier "uVar16") (= "=") (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if (uVar16 < 0x11) {\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }" (if "if") (parenthesized_expression "(uVar16 < 0x11)" (( "(") (binary_expression "uVar16 < 0x11" (identifier "uVar16") (< "<") (number_literal "0x11")) () ")")) (compound_statement "{\n          if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }\n          uVar23 = puVar24[10];\n          if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }\nLAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);\n          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;\n          if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }\n          uVar12 = dcgettext(0,pcVar14,5);\n          warn(uVar12,uVar17,uVar22);\n          goto LAB_0012aec8;\n        }" ({ "{") (if_statement "if (uVar16 < 0xe) {\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }" (if "if") (parenthesized_expression "(uVar16 < 0xe)" (( "(") (binary_expression "uVar16 < 0xe" (identifier "uVar16") (< "<") (number_literal "0xe")) () ")")) (compound_statement "{\n            if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }\n            goto joined_r0x0012ae86;\n          }" ({ "{") (if_statement "if (uVar16 < 6) {\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }\n            else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" (if "if") (parenthesized_expression "(uVar16 < 6)" (( "(") (binary_expression "uVar16 < 6" (identifier "uVar16") (< "<") (number_literal "6")) () ")")) (compound_statement "{\n              if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }\n            }" ({ "{") (if_statement "if (uVar16 < 4) {\n                if (uVar16 == 2) goto LAB_0012b074;\n              }\n              else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" (if "if") (parenthesized_expression "(uVar16 < 4)" (( "(") (binary_expression "uVar16 < 4" (identifier "uVar16") (< "<") (number_literal "4")) () ")")) (compound_statement "{\n                if (uVar16 == 2) goto LAB_0012b074;\n              }" ({ "{") (if_statement "if (uVar16 == 2) goto LAB_0012b074;" (if "if") (parenthesized_expression "(uVar16 == 2)" (( "(") (binary_expression "uVar16 == 2" (identifier "uVar16") (== "==") (number_literal "2")) () ")")) (goto_statement "goto LAB_0012b074;" (goto "goto") (statement_identifier "LAB_0012b074") (; ";"))) (} "}")) (else_clause "else {\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" (else "else") (compound_statement "{\nLAB_0012bb47:\n                uVar23 = puVar24[10];\n                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }\n              }" ({ "{") (labeled_statement "LAB_0012bb47:\n                uVar23 = puVar24[10];" (statement_identifier "LAB_0012bb47") (: ":") (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" (identifier "uVar23") (= "=") (subscript_expression "puVar24[10]" (identifier "puVar24") ([ "[") (number_literal "10") (] "]"))) (; ";"))) (if_statement "if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))) {\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }" (if "if") (parenthesized_expression "(((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb))))" (( "(") (binary_expression "((uVar23 == 0) || (uVar22 <= uVar23)) ||\n                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))" (parenthesized_expression "((uVar23 == 0) || (uVar22 <= uVar23))" (( "(") (binary_expression "(uVar23 == 0) || (uVar22 <= uVar23)" (parenthesized_expression "(uVar23 == 0)" (( "(") (binary_expression "uVar23 == 0" (identifier "uVar23") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(uVar22 <= uVar23)" (( "(") (binary_expression "uVar22 <= uVar23" (identifier "uVar22") (<= "<=") (identifier "uVar23")) () ")"))) () ")")) (|| "||") (parenthesized_expression "((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)))" (( "(") (parenthesized_expression "(iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb))" (( "(") (comma_expression "iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),\n                    iVar7 != 2 && (iVar7 != 0xb)" (assignment_expression "iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (identifier "iVar7") (= "=") (pointer_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (* "*") (cast_expression "(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (( "(") (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar23 * 0x50" (cast_expression "(ulong)uVar23" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar23")) (* "*") (number_literal "0x50")) (+ "+") (pointer_expression "*(long *)(param_1 + 0x70)" (* "*") (cast_expression "(long *)(param_1 + 0x70)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (+ "+") (number_literal "4")) () ")"))))) (, ",") (binary_expression "iVar7 != 2 && (iVar7 != 0xb)" (binary_expression "iVar7 != 2" (identifier "iVar7") (!= "!=") (number_literal "2")) (&& "&&") (parenthesized_expression "(iVar7 != 0xb)" (( "(") (binary_expression "iVar7 != 0xb" (identifier "iVar7") (!= "!=") (number_literal "0xb")) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\n                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";\n                  goto LAB_0012b0a7;\n                }" ({ "{") (expression_statement "pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";" (assignment_expression "pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n"" (identifier "pcVar14") (= "=") (string_literal ""[%2u]: Link field (%u) should index a symtab section.\n"" (" """) (string_content "[%2u]: Link field (%u) should index a symtab section.") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0012b0a7;" (goto "goto") (statement_identifier "LAB_0012b0a7") (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" (else "else") (compound_statement "{\n              if (uVar16 == 9) goto LAB_0012bb47;\n              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;\n            }" ({ "{") (if_statement "if (uVar16 == 9) goto LAB_0012bb47;" (if "if") (parenthesized_expression "(uVar16 == 9)" (( "(") (binary_expression "uVar16 == 9" (identifier "uVar16") (== "==") (number_literal "9")) () ")")) (goto_statement "goto LAB_0012bb47;" (goto "goto") (statement_identifier "LAB_0012bb47") (; ";"))) (if_statement "if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;" (if "if") (parenthesized_expression "((uVar16 == 0xb) || (uVar16 == 6))" (( "(") (binary_expression "(uVar16 == 0xb) || (uVar16 == 6)" (parenthesized_expression "(uVar16 == 0xb)" (( "(") (binary_expression "uVar16 == 0xb" (identifier "uVar16") (== "==") (number_literal "0xb")) () ")")) (|| "||") (parenthesized_expression "(uVar16 == 6)" (( "(") (binary_expression "uVar16 == 6" (identifier "uVar16") (== "==") (number_literal "6")) () ")"))) () ")")) (goto_statement "goto LAB_0012b074;" (goto "goto") (statement_identifier "LAB_0012b074") (; ";"))) (} "}")))) (goto_statement "goto joined_r0x0012ae86;" (goto "goto") (statement_identifier "joined_r0x0012ae86") (; ";")) (} "}"))) (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" (identifier "uVar23") (= "=") (subscript_expression "puVar24[10]" (identifier "puVar24") ([ "[") (number_literal "10") (] "]"))) (; ";")) (if_statement "if (uVar23 != 0) {\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }" (if "if") (parenthesized_expression "(uVar23 != 0)" (( "(") (binary_expression "uVar23 != 0" (identifier "uVar23") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";\n            goto LAB_0012b0a7;\n          }" ({ "{") (expression_statement "pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";" (assignment_expression "pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n"" (identifier "pcVar14") (= "=") (string_literal ""[%2u]: Unexpected value (%u) in link field.\n"" (" """) (string_content "[%2u]: Unexpected value (%u) in link field.") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0012b0a7;" (goto "goto") (statement_identifier "LAB_0012b0a7") (; ";")) (} "}"))) (labeled_statement "LAB_0012b0ca:\n          uVar10 = 1L << ((byte)uVar16 & 0x3f);" (statement_identifier "LAB_0012b0ca") (: ":") (expression_statement "uVar10 = 1L << ((byte)uVar16 & 0x3f);" (assignment_expression "uVar10 = 1L << ((byte)uVar16 & 0x3f)" (identifier "uVar10") (= "=") (binary_expression "1L << ((byte)uVar16 & 0x3f)" (number_literal "1L") (<< "<<") (parenthesized_expression "((byte)uVar16 & 0x3f)" (( "(") (binary_expression "(byte)uVar16 & 0x3f" (cast_expression "(byte)uVar16" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar16")) (& "&") (number_literal "0x3f")) () ")")))) (; ";"))) (if_statement "if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;" (if "if") (parenthesized_expression "((uVar10 & 0x20804) != 0)" (( "(") (binary_expression "(uVar10 & 0x20804) != 0" (parenthesized_expression "(uVar10 & 0x20804)" (( "(") (binary_expression "uVar10 & 0x20804" (identifier "uVar10") (& "&") (number_literal "0x20804")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";"))) (if_statement "if ((uVar10 & 0x5c060) == 0) {\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }\n          else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" (if "if") (parenthesized_expression "((uVar10 & 0x5c060) == 0)" (( "(") (binary_expression "(uVar10 & 0x5c060) == 0" (parenthesized_expression "(uVar10 & 0x5c060)" (( "(") (binary_expression "uVar10 & 0x5c060" (identifier "uVar10") (& "&") (number_literal "0x5c060")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }\n            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";\n          }" ({ "{") (if_statement "if ((uVar10 & 0x210) == 0) {\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }" (if "if") (parenthesized_expression "((uVar10 & 0x210) == 0)" (( "(") (binary_expression "(uVar10 & 0x210) == 0" (parenthesized_expression "(uVar10 & 0x210)" (( "(") (binary_expression "uVar10 & 0x210" (identifier "uVar10") (& "&") (number_literal "0x210")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if (uVar16 == 8) goto LAB_0012aef0;\n              uVar10 = *(ulong *)(puVar24 + 2);\n              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;\n              goto LAB_0012ae98;\n            }" ({ "{") (if_statement "if (uVar16 == 8) goto LAB_0012aef0;" (if "if") (parenthesized_expression "(uVar16 == 8)" (( "(") (binary_expression "uVar16 == 8" (identifier "uVar16") (== "==") (number_literal "8")) () ")")) (goto_statement "goto LAB_0012aef0;" (goto "goto") (statement_identifier "LAB_0012aef0") (; ";"))) (expression_statement "uVar10 = *(ulong *)(puVar24 + 2);" (assignment_expression "uVar10 = *(ulong *)(puVar24 + 2)" (identifier "uVar10") (= "=") (pointer_expression "*(ulong *)(puVar24 + 2)" (* "*") (cast_expression "(ulong *)(puVar24 + 2)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 2)" (( "(") (binary_expression "puVar24 + 2" (identifier "puVar24") (+ "+") (number_literal "2")) () ")"))))) (; ";")) (if_statement "if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;" (if "if") (parenthesized_expression "((uVar10 & 0x40) == 0)" (( "(") (binary_expression "(uVar10 & 0x40) == 0" (parenthesized_expression "(uVar10 & 0x40)" (( "(") (binary_expression "uVar10 & 0x40" (identifier "uVar10") (& "&") (number_literal "0x40")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012bf7c;" (goto "goto") (statement_identifier "LAB_0012bf7c") (; ";"))) (goto_statement "goto LAB_0012ae98;" (goto "goto") (statement_identifier "LAB_0012ae98") (; ";")) (} "}"))) (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" (identifier "uVar22") (= "=") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (; ";")) (if_statement "if (uVar22 == 0) {\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }\n            else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" (if "if") (parenthesized_expression "(uVar22 == 0)" (( "(") (binary_expression "uVar22 == 0" (identifier "uVar22") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;\n              uVar10 = *(ulong *)(param_1 + 0x80);\n              if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }\n              lVar20 = 10;\n              pbVar18 = (byte *)".rela.dyn";\n              do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);\n              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n              uVar22 = puVar24[0xb];\n            }" ({ "{") (if_statement "if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;" (if "if") (parenthesized_expression "((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2)" (( "(") (binary_expression "(ushort)(*(short *)(param_1 + 0x50) - 2U) < 2" (call_expression "(ushort)(*(short *)(param_1 + 0x50) - 2U)" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (argument_list "(*(short *)(param_1 + 0x50) - 2U)" (( "(") (binary_expression "*(short *)(param_1 + 0x50) - 2U" (pointer_expression "*(short *)(param_1 + 0x50)" (* "*") (cast_expression "(short *)(param_1 + 0x50)" (( "(") (type_descriptor "short *" (sized_type_specifier "short" (short "short")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")")))) (- "-") (number_literal "2U")) () ")"))) (< "<") (number_literal "2")) () ")")) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";"))) (expression_statement "uVar10 = *(ulong *)(param_1 + 0x80);" (assignment_expression "uVar10 = *(ulong *)(param_1 + 0x80)" (identifier "uVar10") (= "=") (pointer_expression "*(ulong *)(param_1 + 0x80)" (* "*") (cast_expression "(ulong *)(param_1 + 0x80)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")"))))) (; ";")) (if_statement "if (uVar10 == 0) {\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }\n              else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" (if "if") (parenthesized_expression "(uVar10 == 0)" (( "(") (binary_expression "uVar10 == 0" (identifier "uVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                uVar27 = 0;\n                uVar29 = 1;\n                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\nLAB_0012c57f:\n                lVar20 = 9;\n                pbVar18 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);\n                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;\n                uVar10 = *(ulong *)(param_1 + 0x80);\n                if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }\n              }" ({ "{") (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" (identifier "uVar27") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" (identifier "uVar29") (= "=") (number_literal "1")) (; ";")) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"<no-strings>",5)" (identifier "dcgettext") (argument_list "(0,"<no-strings>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<no-strings>"" (" """) (string_content "<no-strings>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (labeled_statement "LAB_0012c57f:\n                lVar20 = 9;" (statement_identifier "LAB_0012c57f") (: ":") (expression_statement "lVar20 = 9;" (assignment_expression "lVar20 = 9" (identifier "lVar20") (= "=") (number_literal "9")) (; ";"))) (expression_statement "pbVar18 = (byte *)".rel.dyn";" (assignment_expression "pbVar18 = (byte *)".rel.dyn"" (identifier "pbVar18") (= "=") (cast_expression "(byte *)".rel.dyn"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".rel.dyn"" (" """) (string_content ".rel.dyn") (" """)))) (; ";")) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                } while ((bool)uVar29);" (do "do") (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  uVar27 = *pbVar9 < *pbVar18;\n                  uVar29 = *pbVar9 == *pbVar18;\n                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "uVar27 = *pbVar9 < *pbVar18;" (assignment_expression "uVar27 = *pbVar9 < *pbVar18" (identifier "uVar27") (= "=") (binary_expression "*pbVar9 < *pbVar18" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")))) (; ";")) (expression_statement "uVar29 = *pbVar9 == *pbVar18;" (assignment_expression "uVar29 = *pbVar9 == *pbVar18" (identifier "uVar29") (= "=") (binary_expression "*pbVar9 == *pbVar18" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((bool)uVar29)" (( "(") (cast_expression "(bool)uVar29" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar29")) () ")")) (; ";")) (if_statement "if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;" (if "if") (parenthesized_expression "((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27)" (( "(") (binary_expression "(!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27" (parenthesized_expression "(!(bool)uVar27 && !(bool)uVar29)" (( "(") (binary_expression "!(bool)uVar27 && !(bool)uVar29" (unary_expression "!(bool)uVar27" (! "!") (cast_expression "(bool)uVar27" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar27"))) (&& "&&") (unary_expression "!(bool)uVar29" (! "!") (cast_expression "(bool)uVar29" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar29")))) () ")")) (== "==") (cast_expression "(bool)uVar27" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar27"))) () ")")) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";"))) (expression_statement "uVar10 = *(ulong *)(param_1 + 0x80);" (assignment_expression "uVar10 = *(ulong *)(param_1 + 0x80)" (identifier "uVar10") (= "=") (pointer_expression "*(ulong *)(param_1 + 0x80)" (* "*") (cast_expression "(ulong *)(param_1 + 0x80)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")"))))) (; ";")) (if_statement "if (uVar10 == 0) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }\n                else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" (if "if") (parenthesized_expression "(uVar10 == 0)" (( "(") (binary_expression "uVar10 == 0" (identifier "uVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);\n                }" ({ "{") (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" (identifier "uVar27") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" (identifier "uVar29") (= "=") (number_literal "1")) (; ";")) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<no-strings>",5)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)dcgettext(0,"<no-strings>",5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"<no-strings>",5)" (identifier "dcgettext") (argument_list "(0,"<no-strings>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<no-strings>"" (" """) (string_content "<no-strings>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" (else "else") (compound_statement "{\n                  uVar15 = (ulong)*puVar24;\n                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }\n                }" ({ "{") (expression_statement "uVar15 = (ulong)*puVar24;" (assignment_expression "uVar15 = (ulong)*puVar24" (identifier "uVar15") (= "=") (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (identifier "puVar24"))) (; ";")) (if_statement "if (uVar15 < *(ulong *)(param_1 + 0x88)) {\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }\n                  else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" (if "if") (parenthesized_expression "(uVar15 < *(ulong *)(param_1 + 0x88))" (( "(") (binary_expression "uVar15 < *(ulong *)(param_1 + 0x88)" (identifier "uVar15") (< "<") (pointer_expression "*(ulong *)(param_1 + 0x88)" (* "*") (cast_expression "(ulong *)(param_1 + 0x88)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")"))))) () ")")) (compound_statement "{\n                    uVar27 = CARRY8(uVar10,uVar15);\n                    pbVar9 = (byte *)(uVar10 + uVar15);\n                    uVar29 = pbVar9 == (byte *)0x0;\n                  }" ({ "{") (expression_statement "uVar27 = CARRY8(uVar10,uVar15);" (assignment_expression "uVar27 = CARRY8(uVar10,uVar15)" (identifier "uVar27") (= "=") (call_expression "CARRY8(uVar10,uVar15)" (identifier "CARRY8") (argument_list "(uVar10,uVar15)" (( "(") (identifier "uVar10") (, ",") (identifier "uVar15") () ")")))) (; ";")) (expression_statement "pbVar9 = (byte *)(uVar10 + uVar15);" (assignment_expression "pbVar9 = (byte *)(uVar10 + uVar15)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)(uVar10 + uVar15)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar10 + uVar15)" (( "(") (binary_expression "uVar10 + uVar15" (identifier "uVar10") (+ "+") (identifier "uVar15")) () ")")))) (; ";")) (expression_statement "uVar29 = pbVar9 == (byte *)0x0;" (assignment_expression "uVar29 = pbVar9 == (byte *)0x0" (identifier "uVar29") (= "=") (binary_expression "pbVar9 == (byte *)0x0" (identifier "pbVar9") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (} "}")) (else_clause "else {\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" (else "else") (compound_statement "{\n                    uVar27 = 0;\n                    uVar29 = 1;\n                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  }" ({ "{") (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" (identifier "uVar27") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" (identifier "uVar29") (= "=") (number_literal "1")) (; ";")) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"<corrupt>",5)" (identifier "dcgettext") (argument_list "(0,"<corrupt>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<corrupt>"" (" """) (string_content "<corrupt>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (} "}")))) (} "}")))) (} "}")) (else_clause "else {\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" (else "else") (compound_statement "{\n                uVar15 = (ulong)*puVar24;\n                if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }\n                bVar25 = CARRY8(uVar10,uVar15);\n                pbVar9 = (byte *)(uVar10 + uVar15);\n                bVar28 = pbVar9 == (byte *)0x0;\n                lVar20 = 9;\n                pbVar18 = pbVar9;\n                pbVar21 = (byte *)".rel.dyn";\n                do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);\n                uVar27 = 0;\n                uVar29 = (!bVar25 && !bVar28) == bVar25;\n                if ((bool)uVar29) goto LAB_0012aec8;\n              }" ({ "{") (expression_statement "uVar15 = (ulong)*puVar24;" (assignment_expression "uVar15 = (ulong)*puVar24" (identifier "uVar15") (= "=") (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (identifier "puVar24"))) (; ";")) (if_statement "if (*(ulong *)(param_1 + 0x88) <= uVar15) {\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }" (if "if") (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= uVar15)" (( "(") (binary_expression "*(ulong *)(param_1 + 0x88) <= uVar15" (pointer_expression "*(ulong *)(param_1 + 0x88)" (* "*") (cast_expression "(ulong *)(param_1 + 0x88)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")")))) (<= "<=") (identifier "uVar15")) () ")")) (compound_statement "{\n                  uVar27 = 0;\n                  uVar29 = 1;\n                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);\n                  goto LAB_0012c57f;\n                }" ({ "{") (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" (identifier "uVar27") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" (identifier "uVar29") (= "=") (number_literal "1")) (; ";")) (expression_statement "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);" (assignment_expression "pbVar9 = (byte *)dcgettext(0,"<corrupt>",5)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)dcgettext(0,"<corrupt>",5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"<corrupt>",5)" (identifier "dcgettext") (argument_list "(0,"<corrupt>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<corrupt>"" (" """) (string_content "<corrupt>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (goto_statement "goto LAB_0012c57f;" (goto "goto") (statement_identifier "LAB_0012c57f") (; ";")) (} "}"))) (expression_statement "bVar25 = CARRY8(uVar10,uVar15);" (assignment_expression "bVar25 = CARRY8(uVar10,uVar15)" (identifier "bVar25") (= "=") (call_expression "CARRY8(uVar10,uVar15)" (identifier "CARRY8") (argument_list "(uVar10,uVar15)" (( "(") (identifier "uVar10") (, ",") (identifier "uVar15") () ")")))) (; ";")) (expression_statement "pbVar9 = (byte *)(uVar10 + uVar15);" (assignment_expression "pbVar9 = (byte *)(uVar10 + uVar15)" (identifier "pbVar9") (= "=") (cast_expression "(byte *)(uVar10 + uVar15)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar10 + uVar15)" (( "(") (binary_expression "uVar10 + uVar15" (identifier "uVar10") (+ "+") (identifier "uVar15")) () ")")))) (; ";")) (expression_statement "bVar28 = pbVar9 == (byte *)0x0;" (assignment_expression "bVar28 = pbVar9 == (byte *)0x0" (identifier "bVar28") (= "=") (binary_expression "pbVar9 == (byte *)0x0" (identifier "pbVar9") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (expression_statement "lVar20 = 9;" (assignment_expression "lVar20 = 9" (identifier "lVar20") (= "=") (number_literal "9")) (; ";")) (expression_statement "pbVar18 = pbVar9;" (assignment_expression "pbVar18 = pbVar9" (identifier "pbVar18") (= "=") (identifier "pbVar9")) (; ";")) (expression_statement "pbVar21 = (byte *)".rel.dyn";" (assignment_expression "pbVar21 = (byte *)".rel.dyn"" (identifier "pbVar21") (= "=") (cast_expression "(byte *)".rel.dyn"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".rel.dyn"" (" """) (string_content ".rel.dyn") (" """)))) (; ";")) (do_statement "do {\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                } while (bVar28);" (do "do") (compound_statement "{\n                  if (lVar20 == 0) break;\n                  lVar20 = lVar20 + -1;\n                  bVar25 = *pbVar18 < *pbVar21;\n                  bVar28 = *pbVar18 == *pbVar21;\n                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;\n                }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar25 = *pbVar18 < *pbVar21;" (assignment_expression "bVar25 = *pbVar18 < *pbVar21" (identifier "bVar25") (= "=") (binary_expression "*pbVar18 < *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (< "<") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "bVar28 = *pbVar18 == *pbVar21;" (assignment_expression "bVar28 = *pbVar18 == *pbVar21" (identifier "bVar28") (= "=") (binary_expression "*pbVar18 == *pbVar21" (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")) (== "==") (pointer_expression "*pbVar21" (* "*") (identifier "pbVar21")))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1" (identifier "pbVar21") (= "=") (binary_expression "pbVar21 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar21 + (ulong)bVar30 * -2" (identifier "pbVar21") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar28)" (( "(") (identifier "bVar28") () ")")) (; ";")) (expression_statement "uVar27 = 0;" (assignment_expression "uVar27 = 0" (identifier "uVar27") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar29 = (!bVar25 && !bVar28) == bVar25;" (assignment_expression "uVar29 = (!bVar25 && !bVar28) == bVar25" (identifier "uVar29") (= "=") (binary_expression "(!bVar25 && !bVar28) == bVar25" (parenthesized_expression "(!bVar25 && !bVar28)" (( "(") (binary_expression "!bVar25 && !bVar28" (unary_expression "!bVar25" (! "!") (identifier "bVar25")) (&& "&&") (unary_expression "!bVar28" (! "!") (identifier "bVar28"))) () ")")) (== "==") (identifier "bVar25"))) (; ";")) (if_statement "if ((bool)uVar29) goto LAB_0012aec8;" (if "if") (parenthesized_expression "((bool)uVar29)" (( "(") (cast_expression "(bool)uVar29" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar29")) () ")")) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";"))) (} "}")))) (expression_statement "lVar20 = 10;" (assignment_expression "lVar20 = 10" (identifier "lVar20") (= "=") (number_literal "10")) (; ";")) (expression_statement "pbVar18 = (byte *)".rela.dyn";" (assignment_expression "pbVar18 = (byte *)".rela.dyn"" (identifier "pbVar18") (= "=") (cast_expression "(byte *)".rela.dyn"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".rela.dyn"" (" """) (string_content ".rela.dyn") (" """)))) (; ";")) (do_statement "do {\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              } while ((bool)uVar29);" (do "do") (compound_statement "{\n                if (lVar20 == 0) break;\n                lVar20 = lVar20 + -1;\n                uVar27 = *pbVar9 < *pbVar18;\n                uVar29 = *pbVar9 == *pbVar18;\n                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;\n                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;\n              }" ({ "{") (if_statement "if (lVar20 == 0) break;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar20 = lVar20 + -1;" (assignment_expression "lVar20 = lVar20 + -1" (identifier "lVar20") (= "=") (binary_expression "lVar20 + -1" (identifier "lVar20") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "uVar27 = *pbVar9 < *pbVar18;" (assignment_expression "uVar27 = *pbVar9 < *pbVar18" (identifier "uVar27") (= "=") (binary_expression "*pbVar9 < *pbVar18" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (< "<") (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")))) (; ";")) (expression_statement "uVar29 = *pbVar9 == *pbVar18;" (assignment_expression "uVar29 = *pbVar9 == *pbVar18" (identifier "uVar29") (= "=") (binary_expression "*pbVar9 == *pbVar18" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (== "==") (pointer_expression "*pbVar18" (* "*") (identifier "pbVar18")))) (; ";")) (expression_statement "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar9 + (ulong)bVar30 * -2" (identifier "pbVar9") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;" (assignment_expression "pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1" (identifier "pbVar18") (= "=") (binary_expression "pbVar18 + (ulong)bVar30 * -2 + 1" (binary_expression "pbVar18 + (ulong)bVar30 * -2" (identifier "pbVar18") (+ "+") (binary_expression "(ulong)bVar30 * -2" (cast_expression "(ulong)bVar30" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar30")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((bool)uVar29)" (( "(") (cast_expression "(bool)uVar29" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar29")) () ")")) (; ";")) (if_statement "if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;" (if "if") (parenthesized_expression "((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27)" (( "(") (binary_expression "(!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27" (parenthesized_expression "(!(bool)uVar27 && !(bool)uVar29)" (( "(") (binary_expression "!(bool)uVar27 && !(bool)uVar29" (unary_expression "!(bool)uVar27" (! "!") (cast_expression "(bool)uVar27" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar27"))) (&& "&&") (unary_expression "!(bool)uVar29" (! "!") (cast_expression "(bool)uVar29" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar29")))) () ")")) (== "==") (cast_expression "(bool)uVar27" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar27"))) () ")")) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";"))) (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" (identifier "uVar22") (= "=") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (; ";")) (} "}")) (else_clause "else if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" (else "else") (if_statement "if (uVar22 < *(uint *)(param_1 + 100)) {\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" (if "if") (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" (( "(") (binary_expression "uVar22 < *(uint *)(param_1 + 100)" (identifier "uVar22") (< "<") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) () ")")) (compound_statement "{\n              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);\n              bVar5 = 1;\n              if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }\n              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;\n            }" ({ "{") (expression_statement "uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);" (assignment_expression "uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (identifier "uVar16") (= "=") (pointer_expression "*(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (* "*") (cast_expression "(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (( "(") (binary_expression "(ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar22 * 0x50" (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) (* "*") (number_literal "0x50")) (+ "+") (pointer_expression "*(long *)(param_1 + 0x70)" (* "*") (cast_expression "(long *)(param_1 + 0x70)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "bVar5 = 1;" (assignment_expression "bVar5 = 1" (identifier "bVar5") (= "=") (number_literal "1")) (; ";")) (if_statement "if (uVar16 < 0xf) {\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }" (if "if") (parenthesized_expression "(uVar16 < 0xf)" (( "(") (binary_expression "uVar16 < 0xf" (identifier "uVar16") (< "<") (number_literal "0xf")) () ")")) (compound_statement "{\n                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;\n              }" ({ "{") (expression_statement "bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;" (assignment_expression "bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1" (identifier "bVar5") (= "=") (binary_expression "~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1" (unary_expression "~(byte)(0x4182L >> ((byte)uVar16 & 0x3f))" (~ "~") (call_expression "(byte)(0x4182L >> ((byte)uVar16 & 0x3f))" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "(0x4182L >> ((byte)uVar16 & 0x3f))" (( "(") (binary_expression "0x4182L >> ((byte)uVar16 & 0x3f)" (number_literal "0x4182L") (>> ">>") (parenthesized_expression "((byte)uVar16 & 0x3f)" (( "(") (binary_expression "(byte)uVar16 & 0x3f" (cast_expression "(byte)uVar16" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar16")) (& "&") (number_literal "0x3f")) () ")"))) () ")")))) (& "&") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;" (if "if") (parenthesized_expression "((0x5fffffff < uVar16) || (bVar5 == 0))" (( "(") (binary_expression "(0x5fffffff < uVar16) || (bVar5 == 0)" (parenthesized_expression "(0x5fffffff < uVar16)" (( "(") (binary_expression "0x5fffffff < uVar16" (number_literal "0x5fffffff") (< "<") (identifier "uVar16")) () ")")) (|| "||") (parenthesized_expression "(bVar5 == 0)" (( "(") (binary_expression "bVar5 == 0" (identifier "bVar5") (== "==") (number_literal "0")) () ")"))) () ")")) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";"))) (} "}"))))) (expression_statement "pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";" (assignment_expression "pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n"" (identifier "pcVar14") (= "=") (string_literal ""[%2u]: Info field (%u) should index a relocatable section.\n"" (" """) (string_content "[%2u]: Info field (%u) should index a relocatable section.") (escape_sequence "\n") (" """))) (; ";")) (} "}")) (else_clause "else {\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" (else "else") (compound_statement "{\nLAB_0012bf87:\n            uVar22 = puVar24[0xb];\n            if (uVar22 == 0) goto LAB_0012aec8;\n            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";\n          }" ({ "{") (labeled_statement "LAB_0012bf87:\n            uVar22 = puVar24[0xb];" (statement_identifier "LAB_0012bf87") (: ":") (expression_statement "uVar22 = puVar24[0xb];" (assignment_expression "uVar22 = puVar24[0xb]" (identifier "uVar22") (= "=") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (; ";"))) (if_statement "if (uVar22 == 0) goto LAB_0012aec8;" (if "if") (parenthesized_expression "(uVar22 == 0)" (( "(") (binary_expression "uVar22 == 0" (identifier "uVar22") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";"))) (expression_statement "pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";" (assignment_expression "pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n"" (identifier "pcVar14") (= "=") (string_literal ""[%2u]: Unexpected value (%u) in info field.\n"" (" """) (string_content "[%2u]: Unexpected value (%u) in info field.") (escape_sequence "\n") (" """))) (; ";")) (} "}")))) (expression_statement "uVar12 = dcgettext(0,pcVar14,5);" (assignment_expression "uVar12 = dcgettext(0,pcVar14,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,pcVar14,5)" (identifier "dcgettext") (argument_list "(0,pcVar14,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar14") (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,uVar17,uVar22);" (call_expression "warn(uVar12,uVar17,uVar22)" (identifier "warn") (argument_list "(uVar12,uVar17,uVar22)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar17") (, ",") (identifier "uVar22") () ")"))) (; ";")) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";")) (} "}"))) (if_statement "if (uVar16 == 0x6ffffff7) {\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }\n        else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" (if "if") (parenthesized_expression "(uVar16 == 0x6ffffff7)" (( "(") (binary_expression "uVar16 == 0x6ffffff7" (identifier "uVar16") (== "==") (number_literal "0x6ffffff7")) () ")")) (compound_statement "{\nLAB_0012b074:\n          uVar23 = puVar24[10];\n          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }\n        }" ({ "{") (labeled_statement "LAB_0012b074:\n          uVar23 = puVar24[10];" (statement_identifier "LAB_0012b074") (: ":") (expression_statement "uVar23 = puVar24[10];" (assignment_expression "uVar23 = puVar24[10]" (identifier "uVar23") (= "=") (subscript_expression "puVar24[10]" (identifier "puVar24") ([ "[") (number_literal "10") (] "]"))) (; ";"))) (if_statement "if (((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }" (if "if") (parenthesized_expression "(((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3))" (( "(") (binary_expression "((uVar23 == 0) || (uVar22 <= uVar23)) ||\n             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)" (parenthesized_expression "((uVar23 == 0) || (uVar22 <= uVar23))" (( "(") (binary_expression "(uVar23 == 0) || (uVar22 <= uVar23)" (parenthesized_expression "(uVar23 == 0)" (( "(") (binary_expression "uVar23 == 0" (identifier "uVar23") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(uVar22 <= uVar23)" (( "(") (binary_expression "uVar22 <= uVar23" (identifier "uVar22") (<= "<=") (identifier "uVar23")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)" (( "(") (binary_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3" (pointer_expression "*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (* "*") (cast_expression "(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4)" (( "(") (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4" (binary_expression "(ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70)" (binary_expression "(ulong)uVar23 * 0x50" (cast_expression "(ulong)uVar23" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar23")) (* "*") (number_literal "0x50")) (+ "+") (pointer_expression "*(long *)(param_1 + 0x70)" (* "*") (cast_expression "(long *)(param_1 + 0x70)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (+ "+") (number_literal "4")) () ")")))) (!= "!=") (number_literal "3")) () ")"))) () ")")) (compound_statement "{\n            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";\nLAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);\n            warn(uVar12,uVar17,uVar23);\n            uVar16 = puVar24[1];\n          }" ({ "{") (expression_statement "pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";" (assignment_expression "pcVar14 = "[%2u]: Link field (%u) should index a string section.\n"" (identifier "pcVar14") (= "=") (string_literal ""[%2u]: Link field (%u) should index a string section.\n"" (" """) (string_content "[%2u]: Link field (%u) should index a string section.") (escape_sequence "\n") (" """))) (; ";")) (labeled_statement "LAB_0012b0a7:\n            uVar12 = dcgettext(0,pcVar14,5);" (statement_identifier "LAB_0012b0a7") (: ":") (expression_statement "uVar12 = dcgettext(0,pcVar14,5);" (assignment_expression "uVar12 = dcgettext(0,pcVar14,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,pcVar14,5)" (identifier "dcgettext") (argument_list "(0,pcVar14,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar14") (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "warn(uVar12,uVar17,uVar23);" (call_expression "warn(uVar12,uVar17,uVar23)" (identifier "warn") (argument_list "(uVar12,uVar17,uVar23)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar17") (, ",") (identifier "uVar23") () ")"))) (; ";")) (expression_statement "uVar16 = puVar24[1];" (assignment_expression "uVar16 = puVar24[1]" (identifier "uVar16") (= "=") (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]"))) (; ";")) (} "}"))) (} "}")) (else_clause "else if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" (else "else") (if_statement "if (uVar16 < 0x6ffffff8) {\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }\n        else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" (if "if") (parenthesized_expression "(uVar16 < 0x6ffffff8)" (( "(") (binary_expression "uVar16 < 0x6ffffff8" (identifier "uVar16") (< "<") (number_literal "0x6ffffff8")) () ")")) (compound_statement "{\n          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;\n        }" ({ "{") (if_statement "if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;" (if "if") (parenthesized_expression "((uVar16 < 0x13) || (uVar16 == 0x6ffffff6))" (( "(") (binary_expression "(uVar16 < 0x13) || (uVar16 == 0x6ffffff6)" (parenthesized_expression "(uVar16 < 0x13)" (( "(") (binary_expression "uVar16 < 0x13" (identifier "uVar16") (< "<") (number_literal "0x13")) () ")")) (|| "||") (parenthesized_expression "(uVar16 == 0x6ffffff6)" (( "(") (binary_expression "uVar16 == 0x6ffffff6" (identifier "uVar16") (== "==") (number_literal "0x6ffffff6")) () ")"))) () ")")) (goto_statement "goto LAB_0012bb47;" (goto "goto") (statement_identifier "LAB_0012bb47") (; ";"))) (} "}")) (else_clause "else if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" (else "else") (if_statement "if (0x6ffffffc < uVar16) {\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" (if "if") (parenthesized_expression "(0x6ffffffc < uVar16)" (( "(") (binary_expression "0x6ffffffc < uVar16" (number_literal "0x6ffffffc") (< "<") (identifier "uVar16")) () ")")) (compound_statement "{\n          if (uVar16 < 0x6fffffff) goto LAB_0012b074;\n          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;\n        }" ({ "{") (if_statement "if (uVar16 < 0x6fffffff) goto LAB_0012b074;" (if "if") (parenthesized_expression "(uVar16 < 0x6fffffff)" (( "(") (binary_expression "uVar16 < 0x6fffffff" (identifier "uVar16") (< "<") (number_literal "0x6fffffff")) () ")")) (goto_statement "goto LAB_0012b074;" (goto "goto") (statement_identifier "LAB_0012b074") (; ";"))) (if_statement "if (uVar16 == 0x6fffffff) goto LAB_0012bb47;" (if "if") (parenthesized_expression "(uVar16 == 0x6fffffff)" (( "(") (binary_expression "uVar16 == 0x6fffffff" (identifier "uVar16") (== "==") (number_literal "0x6fffffff")) () ")")) (goto_statement "goto LAB_0012bb47;" (goto "goto") (statement_identifier "LAB_0012bb47") (; ";"))) (} "}"))))))) (labeled_statement "joined_r0x0012ae86:\n        if (uVar16 < 0x13) goto LAB_0012b0ca;" (statement_identifier "joined_r0x0012ae86") (: ":") (if_statement "if (uVar16 < 0x13) goto LAB_0012b0ca;" (if "if") (parenthesized_expression "(uVar16 < 0x13)" (( "(") (binary_expression "uVar16 < 0x13" (identifier "uVar16") (< "<") (number_literal "0x13")) () ")")) (goto_statement "goto LAB_0012b0ca;" (goto "goto") (statement_identifier "LAB_0012b0ca") (; ";")))) (expression_statement "uVar10 = *(ulong *)(puVar24 + 2);" (assignment_expression "uVar10 = *(ulong *)(puVar24 + 2)" (identifier "uVar10") (= "=") (pointer_expression "*(ulong *)(puVar24 + 2)" (* "*") (cast_expression "(ulong *)(puVar24 + 2)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 2)" (( "(") (binary_expression "puVar24 + 2" (identifier "puVar24") (+ "+") (number_literal "2")) () ")"))))) (; ";")) (if_statement "if ((uVar10 & 0x40) == 0) {\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }\n        else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" (if "if") (parenthesized_expression "((uVar10 & 0x40) == 0)" (( "(") (binary_expression "(uVar10 & 0x40) == 0" (parenthesized_expression "(uVar10 & 0x40)" (( "(") (binary_expression "uVar10 & 0x40" (identifier "uVar10") (& "&") (number_literal "0x40")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }\n        }" ({ "{") (if_statement "if (uVar16 < 0x60000000) {\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }" (if "if") (parenthesized_expression "(uVar16 < 0x60000000)" (( "(") (binary_expression "uVar16 < 0x60000000" (identifier "uVar16") (< "<") (number_literal "0x60000000")) () ")")) (compound_statement "{\nLAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;\n            goto LAB_0012aec8;\n          }" ({ "{") (labeled_statement "LAB_0012bf7c:\n            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;" (statement_identifier "LAB_0012bf7c") (: ":") (if_statement "if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;" (if "if") (parenthesized_expression "((uVar10 & 0x1000000) == 0)" (( "(") (binary_expression "(uVar10 & 0x1000000) == 0" (parenthesized_expression "(uVar10 & 0x1000000)" (( "(") (binary_expression "uVar10 & 0x1000000" (identifier "uVar10") (& "&") (number_literal "0x1000000")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012bf87;" (goto "goto") (statement_identifier "LAB_0012bf87") (; ";")))) (goto_statement "goto LAB_0012aec8;" (goto "goto") (statement_identifier "LAB_0012aec8") (; ";")) (} "}"))) (} "}")) (else_clause "else {\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" (else "else") (compound_statement "{\nLAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }\nLAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }\n        }" ({ "{") (labeled_statement "LAB_0012ae98:\n          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" (statement_identifier "LAB_0012ae98") (: ":") (if_statement "if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" (if "if") (parenthesized_expression "((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb]))" (( "(") (binary_expression "(puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])" (parenthesized_expression "(puVar24[0xb] == 0)" (( "(") (binary_expression "puVar24[0xb] == 0" (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]")) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(uint *)(param_1 + 100) <= puVar24[0xb])" (( "(") (binary_expression "*(uint *)(param_1 + 100) <= puVar24[0xb]" (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")")))) (<= "<=") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) () ")"))) () ")")) (compound_statement "{\n            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);\n            warn(uVar12,uVar17);\n          }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);" (assignment_expression "uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"[%2u]: Expected link to another section in info field",5)" (identifier "dcgettext") (argument_list "(0,"[%2u]: Expected link to another section in info field",5)" (( "(") (number_literal "0") (, ",") (string_literal ""[%2u]: Expected link to another section in info field"" (" """) (string_content "[%2u]: Expected link to another section in info field") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,uVar17);" (call_expression "warn(uVar12,uVar17)" (identifier "warn") (argument_list "(uVar12,uVar17)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar17") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_0012aec8:\n          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" (statement_identifier "LAB_0012aec8") (: ":") (if_statement "if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" (if "if") (parenthesized_expression "(((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8))" (( "(") (binary_expression "((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)" (parenthesized_expression "((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff))" (( "(") (binary_expression "(*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&\n              (puVar24[1] - 1 < 0x5fffffff)" (parenthesized_expression "(*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8))" (( "(") (binary_expression "*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)" (pointer_expression "*(ulong *)(param_1 + 0x10)" (* "*") (cast_expression "(ulong *)(param_1 + 0x10)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")")))) (< "<") (pointer_expression "*(ulong *)(puVar24 + 8)" (* "*") (cast_expression "(ulong *)(puVar24 + 8)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 8)" (( "(") (binary_expression "puVar24 + 8" (identifier "puVar24") (+ "+") (number_literal "8")) () ")"))))) () ")")) (&& "&&") (parenthesized_expression "(puVar24[1] - 1 < 0x5fffffff)" (( "(") (binary_expression "puVar24[1] - 1 < 0x5fffffff" (binary_expression "puVar24[1] - 1" (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]")) (- "-") (number_literal "1")) (< "<") (number_literal "0x5fffffff")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(puVar24[1] != 8)" (( "(") (binary_expression "puVar24[1] != 8" (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "8")) () ")"))) () ")")) (compound_statement "{\n            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);\n            warn(uVar12,uVar17);\n          }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Size of section %u is larger than the entire file!\n",5)" (identifier "dcgettext") (argument_list "(0,"Size of section %u is larger than the entire file!\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Size of section %u is larger than the entire file!\n"" (" """) (string_content "Size of section %u is larger than the entire file!") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,uVar17);" (call_expression "warn(uVar12,uVar17)" (identifier "warn") (argument_list "(uVar12,uVar17)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar17") () ")"))) (; ";")) (} "}")))) (} "}")))) (labeled_statement "LAB_0012aef0:\n        printf("  [%2u] ",uVar17);" (statement_identifier "LAB_0012aef0") (: ":") (expression_statement "printf("  [%2u] ",uVar17);" (call_expression "printf("  [%2u] ",uVar17)" (identifier "printf") (argument_list "("  [%2u] ",uVar17)" (( "(") (string_literal ""  [%2u] "" (" """) (string_content "  [%2u] ") (" """)) (, ",") (identifier "uVar17") () ")"))) (; ";"))) (if_statement "if (DAT_0019348c == 0) {\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }\n        else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }\n          FUN_001122a0(0xffffffef,lVar20);\n        }" ({ "{") (if_statement "if (*(long *)(param_1 + 0x80) == 0) {\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }\n          else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" (if "if") (parenthesized_expression "(*(long *)(param_1 + 0x80) == 0)" (( "(") (binary_expression "*(long *)(param_1 + 0x80) == 0" (pointer_expression "*(long *)(param_1 + 0x80)" (* "*") (cast_expression "(long *)(param_1 + 0x80)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            lVar20 = dcgettext(0,"<no-strings>",5);\n          }" ({ "{") (expression_statement "lVar20 = dcgettext(0,"<no-strings>",5);" (assignment_expression "lVar20 = dcgettext(0,"<no-strings>",5)" (identifier "lVar20") (= "=") (call_expression "dcgettext(0,"<no-strings>",5)" (identifier "dcgettext") (argument_list "(0,"<no-strings>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<no-strings>"" (" """) (string_content "<no-strings>") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}")) (else_clause "else {\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" (else "else") (compound_statement "{\n            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;\n            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }\n          }" ({ "{") (expression_statement "lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;" (assignment_expression "lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24" (identifier "lVar20") (= "=") (binary_expression "*(long *)(param_1 + 0x80) + (ulong)*puVar24" (pointer_expression "*(long *)(param_1 + 0x80)" (* "*") (cast_expression "(long *)(param_1 + 0x80)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")")))) (+ "+") (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (identifier "puVar24")))) (; ";")) (if_statement "if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }" (if "if") (parenthesized_expression "(*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24)" (( "(") (binary_expression "*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24" (pointer_expression "*(ulong *)(param_1 + 0x88)" (* "*") (cast_expression "(ulong *)(param_1 + 0x88)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")")))) (<= "<=") (binary_expression "(ulong)*puVar24" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (identifier "puVar24"))) () ")")) (compound_statement "{\n              lVar20 = dcgettext(0,"<corrupt>",5);\n            }" ({ "{") (expression_statement "lVar20 = dcgettext(0,"<corrupt>",5);" (assignment_expression "lVar20 = dcgettext(0,"<corrupt>",5)" (identifier "lVar20") (= "=") (call_expression "dcgettext(0,"<corrupt>",5)" (identifier "dcgettext") (argument_list "(0,"<corrupt>",5)" (( "(") (number_literal "0") (, ",") (string_literal ""<corrupt>"" (" """) (string_content "<corrupt>") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (} "}"))) (} "}")))) (expression_statement "FUN_001122a0(0xffffffef,lVar20);" (call_expression "FUN_001122a0(0xffffffef,lVar20)" (identifier "FUN_001122a0") (argument_list "(0xffffffef,lVar20)" (( "(") (number_literal "0xffffffef") (, ",") (identifier "lVar20") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" (else "else") (compound_statement "{\n          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);\n          printf("%s\n      ",uVar12);\n        }" ({ "{") (expression_statement "uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);" (assignment_expression "uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24)" (identifier "uVar12") (= "=") (call_expression "FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24)" (identifier "FUN_00113f30") (argument_list "(param_1 + 0x80,param_1 + 0x88,puVar24)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) (, ",") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) (, ",") (identifier "puVar24") () ")")))) (; ";")) (expression_statement "printf("%s\n      ",uVar12);" (call_expression "printf("%s\n      ",uVar12)" (identifier "printf") (argument_list "("%s\n      ",uVar12)" (( "(") (string_literal ""%s\n      "" (" """) (string_content "%s") (escape_sequence "\n") (string_content "      ") (" """)) (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")))) (expression_statement "uVar12 = FUN_001176d0(param_1,puVar24[1]);" (assignment_expression "uVar12 = FUN_001176d0(param_1,puVar24[1])" (identifier "uVar12") (= "=") (call_expression "FUN_001176d0(param_1,puVar24[1])" (identifier "FUN_001176d0") (argument_list "(param_1,puVar24[1])" (( "(") (identifier "param_1") (, ",") (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]")) () ")")))) (; ";")) (expression_statement "pcVar14 = " %-15.15s ";" (assignment_expression "pcVar14 = " %-15.15s "" (identifier "pcVar14") (= "=") (string_literal "" %-15.15s "" (" """) (string_content " %-15.15s ") (" """))) (; ";")) (if_statement "if (DAT_00196f50 != 0) {\n          pcVar14 = " %-15s ";\n        }" (if "if") (parenthesized_expression "(DAT_00196f50 != 0)" (( "(") (binary_expression "DAT_00196f50 != 0" (identifier "DAT_00196f50") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          pcVar14 = " %-15s ";\n        }" ({ "{") (expression_statement "pcVar14 = " %-15s ";" (assignment_expression "pcVar14 = " %-15s "" (identifier "pcVar14") (= "=") (string_literal "" %-15s "" (" """) (string_content " %-15s ") (" """))) (; ";")) (} "}"))) (expression_statement "printf(pcVar14,uVar12);" (call_expression "printf(pcVar14,uVar12)" (identifier "printf") (argument_list "(pcVar14,uVar12)" (( "(") (identifier "pcVar14") (, ",") (identifier "uVar12") () ")"))) (; ";")) (if_statement "if (DAT_0019345c == 0) {\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }\n        else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" (if "if") (parenthesized_expression "(DAT_0019345c == 0)" (( "(") (binary_expression "DAT_0019345c == 0" (identifier "DAT_0019345c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }\n        }" ({ "{") (if_statement "if (DAT_00196f50 == 0) {\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" (if "if") (parenthesized_expression "(DAT_00196f50 == 0)" (( "(") (binary_expression "DAT_00196f50 == 0" (identifier "DAT_00196f50") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }" ({ "{") (if_statement "if (DAT_0019348c == 0) {\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));\n              printf("\n       ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              printf("  ");\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }" ({ "{") (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" (identifier "putc") (argument_list "(0x20,stdout)" (( "(") (number_literal "0x20") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" (identifier "FUN_001116b0") (argument_list "(*(undefined8 *)(puVar24 + 4),6)" (( "(") (pointer_expression "*(undefined8 *)(puVar24 + 4)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 4)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 4)" (( "(") (binary_expression "puVar24 + 4" (identifier "puVar24") (+ "+") (number_literal "4")) () ")")))) (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf("  %8.8lx",*(undefined8 *)(puVar24 + 6))" (identifier "printf") (argument_list "("  %8.8lx",*(undefined8 *)(puVar24 + 6))" (( "(") (string_literal ""  %8.8lx"" (" """) (string_content "  %8.8lx") (" """)) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 6)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 6)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 6)" (( "(") (binary_expression "puVar24 + 6" (identifier "puVar24") (+ "+") (number_literal "6")) () ")")))) () ")"))) (; ";")) (expression_statement "printf("\n       ");" (call_expression "printf("\n       ")" (identifier "printf") (argument_list "("\n       ")" (( "(") (string_literal ""\n       "" (" """) (escape_sequence "\n") (string_content "       ") (" """)) () ")"))) (; ";")) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6)" (identifier "FUN_001116b0") (argument_list "(*(undefined8 *)(puVar24 + 8),6)" (( "(") (pointer_expression "*(undefined8 *)(puVar24 + 8)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 8)" (( "(") (binary_expression "puVar24 + 8" (identifier "puVar24") (+ "+") (number_literal "8")) () ")")))) (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "printf("  ");" (call_expression "printf("  ")" (identifier "printf") (argument_list "("  ")" (( "(") (string_literal ""  "" (" """) (string_content "  ") (" """)) () ")"))) (; ";")) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6)" (identifier "FUN_001116b0") (argument_list "(*(undefined8 *)(puVar24 + 0xe),6)" (( "(") (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xe)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (identifier "uVar12") (= "=") (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (identifier "FUN_0012a330") (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (( "(") (binary_expression "param_1 + 0x1f" (identifier "param_1") (+ "+") (number_literal "0x1f")) (, ",") (binary_expression "param_1 + 0x52" (identifier "param_1") (+ "+") (number_literal "0x52")) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 2)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 2)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 2)" (( "(") (binary_expression "puVar24 + 2" (identifier "puVar24") (+ "+") (number_literal "2")) () ")")))) () ")")))) (; ";")) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" (identifier "printf") (argument_list "(" %3s ",uVar12)" (( "(") (string_literal "" %3s "" (" """) (string_content " %3s ") (" """)) (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" (identifier "printf") (argument_list "("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" (( "(") (string_literal ""     %2u   %3u     %lu\n"" (" """) (string_content "     %2u   %3u     %lu") (escape_sequence "\n") (" """)) (, ",") (cast_expression "(ulong)puVar24[10]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[10]" (identifier "puVar24") ([ "[") (number_literal "10") (] "]"))) (, ",") (cast_expression "(ulong)puVar24[0xb]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xc)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xc)" (( "(") (binary_expression "puVar24 + 0xc" (identifier "puVar24") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";")) (} "}")) (else_clause "else {\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" (else "else") (compound_statement "{\n              uVar12 = FUN_001176d0(param_1,puVar24[1]);\n              printf("       %-15.15s  ",uVar12);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));\n              printf("  %u\n       ",(ulong)puVar24[10]);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);\n              putc(0x20,stdout);\n              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);\n              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" ({ "{") (expression_statement "uVar12 = FUN_001176d0(param_1,puVar24[1]);" (assignment_expression "uVar12 = FUN_001176d0(param_1,puVar24[1])" (identifier "uVar12") (= "=") (call_expression "FUN_001176d0(param_1,puVar24[1])" (identifier "FUN_001176d0") (argument_list "(param_1,puVar24[1])" (( "(") (identifier "param_1") (, ",") (subscript_expression "puVar24[1]" (identifier "puVar24") ([ "[") (number_literal "1") (] "]")) () ")")))) (; ";")) (expression_statement "printf("       %-15.15s  ",uVar12);" (call_expression "printf("       %-15.15s  ",uVar12)" (identifier "printf") (argument_list "("       %-15.15s  ",uVar12)" (( "(") (string_literal ""       %-15.15s  "" (" """) (string_content "       %-15.15s  ") (" """)) (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" (identifier "FUN_001116b0") (argument_list "(*(undefined8 *)(puVar24 + 4),6)" (( "(") (pointer_expression "*(undefined8 *)(puVar24 + 4)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 4)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 4)" (( "(") (binary_expression "puVar24 + 4" (identifier "puVar24") (+ "+") (number_literal "4")) () ")")))) (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf("  %16.16lx",*(undefined8 *)(puVar24 + 6))" (identifier "printf") (argument_list "("  %16.16lx",*(undefined8 *)(puVar24 + 6))" (( "(") (string_literal ""  %16.16lx"" (" """) (string_content "  %16.16lx") (" """)) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 6)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 6)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 6)" (( "(") (binary_expression "puVar24 + 6" (identifier "puVar24") (+ "+") (number_literal "6")) () ")")))) () ")"))) (; ";")) (expression_statement "printf("  %u\n       ",(ulong)puVar24[10]);" (call_expression "printf("  %u\n       ",(ulong)puVar24[10])" (identifier "printf") (argument_list "("  %u\n       ",(ulong)puVar24[10])" (( "(") (string_literal ""  %u\n       "" (" """) (string_content "  %u") (escape_sequence "\n") (string_content "       ") (" """)) (, ",") (cast_expression "(ulong)puVar24[10]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[10]" (identifier "puVar24") ([ "[") (number_literal "10") (] "]"))) () ")"))) (; ";")) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 8),6)" (identifier "FUN_001116b0") (argument_list "(*(undefined8 *)(puVar24 + 8),6)" (( "(") (pointer_expression "*(undefined8 *)(puVar24 + 8)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 8)" (( "(") (binary_expression "puVar24 + 8" (identifier "puVar24") (+ "+") (number_literal "8")) () ")")))) (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" (identifier "putc") (argument_list "(0x20,stdout)" (( "(") (number_literal "0x20") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6)" (identifier "FUN_001116b0") (argument_list "(*(undefined8 *)(puVar24 + 0xe),6)" (( "(") (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xe)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" (identifier "printf") (argument_list "("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" (( "(") (string_literal ""  %-16u  %lu\n"" (" """) (string_content "  %-16u  %lu") (escape_sequence "\n") (" """)) (, ",") (cast_expression "(ulong)puVar24[0xb]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xc)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xc)" (( "(") (binary_expression "puVar24 + 0xc" (identifier "puVar24") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" (else "else") (compound_statement "{\n            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));\n            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));\n            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));\n            if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }\n            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);\n            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));\n          }" ({ "{") (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" (identifier "FUN_001116b0") (argument_list "(*(undefined8 *)(puVar24 + 4),6)" (( "(") (pointer_expression "*(undefined8 *)(puVar24 + 4)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 4)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 4)" (( "(") (binary_expression "puVar24 + 4" (identifier "puVar24") (+ "+") (number_literal "4")) () ")")))) (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));" (call_expression "printf(" %6.6lx",*(undefined8 *)(puVar24 + 6))" (identifier "printf") (argument_list "(" %6.6lx",*(undefined8 *)(puVar24 + 6))" (( "(") (string_literal "" %6.6lx"" (" """) (string_content " %6.6lx") (" """)) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 6)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 6)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 6)" (( "(") (binary_expression "puVar24 + 6" (identifier "puVar24") (+ "+") (number_literal "6")) () ")")))) () ")"))) (; ";")) (expression_statement "printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));" (call_expression "printf(" %6.6lx",*(undefined8 *)(puVar24 + 8))" (identifier "printf") (argument_list "(" %6.6lx",*(undefined8 *)(puVar24 + 8))" (( "(") (string_literal "" %6.6lx"" (" """) (string_content " %6.6lx") (" """)) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 8)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 8)" (( "(") (binary_expression "puVar24 + 8" (identifier "puVar24") (+ "+") (number_literal "8")) () ")")))) () ")"))) (; ";")) (expression_statement "printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));" (call_expression "printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe))" (identifier "printf") (argument_list "(" %2.2lx",*(undefined8 *)(puVar24 + 0xe))" (( "(") (string_literal "" %2.2lx"" (" """) (string_content " %2.2lx") (" """)) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xe)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) () ")"))) (; ";")) (if_statement "if (DAT_0019348c == 0) {\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }\n            else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n              printf(" %3s ",uVar12);\n            }" ({ "{") (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (identifier "uVar12") (= "=") (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (identifier "FUN_0012a330") (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (( "(") (binary_expression "param_1 + 0x1f" (identifier "param_1") (+ "+") (number_literal "0x1f")) (, ",") (binary_expression "param_1 + 0x52" (identifier "param_1") (+ "+") (number_literal "0x52")) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 2)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 2)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 2)" (( "(") (binary_expression "puVar24 + 2" (identifier "puVar24") (+ "+") (number_literal "2")) () ")")))) () ")")))) (; ";")) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" (identifier "printf") (argument_list "(" %3s ",uVar12)" (( "(") (string_literal "" %3s "" (" """) (string_content " %3s ") (" """)) (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")) (else_clause "else {\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" (else "else") (compound_statement "{\n              fwrite(&DAT_0016a396,1,2,stdout);\n            }" ({ "{") (expression_statement "fwrite(&DAT_0016a396,1,2,stdout);" (call_expression "fwrite(&DAT_0016a396,1,2,stdout)" (identifier "fwrite") (argument_list "(&DAT_0016a396,1,2,stdout)" (( "(") (pointer_expression "&DAT_0016a396" (& "&") (identifier "DAT_0016a396")) (, ",") (number_literal "1") (, ",") (number_literal "2") (, ",") (identifier "stdout") () ")"))) (; ";")) (} "}")))) (expression_statement "printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);" (call_expression "printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb])" (identifier "printf") (argument_list "("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb])" (( "(") (string_literal ""%2u %3u "" (" """) (string_content "%2u %3u ") (" """)) (, ",") (cast_expression "(ulong)puVar24[10]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[10]" (identifier "puVar24") ([ "[") (number_literal "10") (] "]"))) (, ",") (cast_expression "(ulong)puVar24[0xb]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) () ")"))) (; ";")) (expression_statement "printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc))" (identifier "printf") (argument_list "("%2lu\n",*(undefined8 *)(puVar24 + 0xc))" (( "(") (string_literal ""%2lu\n"" (" """) (string_content "%2lu") (escape_sequence "\n") (" """)) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xc)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xc)" (( "(") (binary_expression "puVar24 + 0xc" (identifier "puVar24") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" (else "else") (compound_statement "{\n          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);\n          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));\n          if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }\n          uVar22 = puVar24[10];\n          if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }\n        }" ({ "{") (expression_statement "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);" (call_expression "FUN_001116b0(*(undefined8 *)(puVar24 + 4),6)" (identifier "FUN_001116b0") (argument_list "(*(undefined8 *)(puVar24 + 4),6)" (( "(") (pointer_expression "*(undefined8 *)(puVar24 + 4)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 4)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 4)" (( "(") (binary_expression "puVar24 + 4" (identifier "puVar24") (+ "+") (number_literal "4")) () ")")))) (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe));" (call_expression "printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe))" (identifier "printf") (argument_list "(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),\n                 *(undefined8 *)(puVar24 + 0xe))" (( "(") (string_literal "" %6.6lx %6.6lx %2.2lx"" (" """) (string_content " %6.6lx %6.6lx %2.2lx") (" """)) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 6)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 6)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 6)" (( "(") (binary_expression "puVar24 + 6" (identifier "puVar24") (+ "+") (number_literal "6")) () ")")))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 8)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 8)" (( "(") (binary_expression "puVar24 + 8" (identifier "puVar24") (+ "+") (number_literal "8")) () ")")))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xe)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xe)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xe)" (( "(") (binary_expression "puVar24 + 0xe" (identifier "puVar24") (+ "+") (number_literal "0xe")) () ")")))) () ")"))) (; ";")) (if_statement "if (DAT_0019348c == 0) {\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }\n          else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));\n            printf(" %3s ",uVar12);\n          }" ({ "{") (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (identifier "uVar12") (= "=") (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (identifier "FUN_0012a330") (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (( "(") (binary_expression "param_1 + 0x1f" (identifier "param_1") (+ "+") (number_literal "0x1f")) (, ",") (binary_expression "param_1 + 0x52" (identifier "param_1") (+ "+") (number_literal "0x52")) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 2)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 2)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 2)" (( "(") (binary_expression "puVar24 + 2" (identifier "puVar24") (+ "+") (number_literal "2")) () ")")))) () ")")))) (; ";")) (expression_statement "printf(" %3s ",uVar12);" (call_expression "printf(" %3s ",uVar12)" (identifier "printf") (argument_list "(" %3s ",uVar12)" (( "(") (string_literal "" %3s "" (" """) (string_content " %3s ") (" """)) (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" (else "else") (compound_statement "{\n            fwrite(&DAT_0016a396,1,2,stdout);\n          }" ({ "{") (expression_statement "fwrite(&DAT_0016a396,1,2,stdout);" (call_expression "fwrite(&DAT_0016a396,1,2,stdout)" (identifier "fwrite") (argument_list "(&DAT_0016a396,1,2,stdout)" (( "(") (pointer_expression "&DAT_0016a396" (& "&") (identifier "DAT_0016a396")) (, ",") (number_literal "1") (, ",") (number_literal "2") (, ",") (identifier "stdout") () ")"))) (; ";")) (} "}")))) (expression_statement "uVar22 = puVar24[10];" (assignment_expression "uVar22 = puVar24[10]" (identifier "uVar22") (= "=") (subscript_expression "puVar24[10]" (identifier "puVar24") ([ "[") (number_literal "10") (] "]"))) (; ";")) (if_statement "if (uVar22 < *(uint *)(param_1 + 100)) {\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }\n          else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" (if "if") (parenthesized_expression "(uVar22 < *(uint *)(param_1 + 100))" (( "(") (binary_expression "uVar22 < *(uint *)(param_1 + 100)" (identifier "uVar22") (< "<") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) () ")")) (compound_statement "{\n            if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n          }" ({ "{") (if_statement "if (DAT_0019348c == 0) {\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));\n            }" ({ "{") (expression_statement "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" (identifier "printf") (argument_list "("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                     *(undefined8 *)(puVar24 + 0xc))" (( "(") (string_literal ""%2u %3u %2lu\n"" (" """) (string_content "%2u %3u %2lu") (escape_sequence "\n") (" """)) (, ",") (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) (, ",") (cast_expression "(ulong)puVar24[0xb]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xc)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xc)" (( "(") (binary_expression "puVar24 + 0xc" (identifier "puVar24") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";")) (} "}")) (else_clause "else {\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" (else "else") (compound_statement "{\n              printf("%2u ");\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" ({ "{") (expression_statement "printf("%2u ");" (call_expression "printf("%2u ")" (identifier "printf") (argument_list "("%2u ")" (( "(") (string_literal ""%2u "" (" """) (string_content "%2u ") (" """)) () ")"))) (; ";")) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" (identifier "printf") (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" (( "(") (string_literal ""%3u %2lu\n"" (" """) (string_content "%3u %2lu") (escape_sequence "\n") (" """)) (, ",") (cast_expression "(ulong)puVar24[0xb]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xc)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xc)" (( "(") (binary_expression "puVar24 + 0xc" (identifier "puVar24") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" (else "else") (compound_statement "{\n            uVar6 = *(ushort *)(param_1 + 0x52);\n            if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }\n            if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }\n          }" ({ "{") (expression_statement "uVar6 = *(ushort *)(param_1 + 0x52);" (assignment_expression "uVar6 = *(ushort *)(param_1 + 0x52)" (identifier "uVar6") (= "=") (pointer_expression "*(ushort *)(param_1 + 0x52)" (* "*") (cast_expression "(ushort *)(param_1 + 0x52)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x52)" (( "(") (binary_expression "param_1 + 0x52" (identifier "param_1") (+ "+") (number_literal "0x52")) () ")"))))) (; ";")) (if_statement "if (uVar6 == 0x12) {\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }\n            else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" (if "if") (parenthesized_expression "(uVar6 == 0x12)" (( "(") (binary_expression "uVar6 == 0x12" (identifier "uVar6") (== "==") (number_literal "0x12")) () ")")) (compound_statement "{\nLAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }\n              if (DAT_0019348c == 0) goto LAB_0012c248;\n              printf("<%s> ",pcVar14);\n              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n            }" ({ "{") (labeled_statement "LAB_0012c0c0:\n              if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" (statement_identifier "LAB_0012c0c0") (: ":") (if_statement "if (uVar22 == 0xff00) {\n                pcVar14 = "BEFORE";\n              }\n              else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" (if "if") (parenthesized_expression "(uVar22 == 0xff00)" (( "(") (binary_expression "uVar22 == 0xff00" (identifier "uVar22") (== "==") (number_literal "0xff00")) () ")")) (compound_statement "{\n                pcVar14 = "BEFORE";\n              }" ({ "{") (expression_statement "pcVar14 = "BEFORE";" (assignment_expression "pcVar14 = "BEFORE"" (identifier "pcVar14") (= "=") (string_literal ""BEFORE"" (" """) (string_content "BEFORE") (" """))) (; ";")) (} "}")) (else_clause "else {\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" (else "else") (compound_statement "{\n                if (uVar22 != 0xff01) goto LAB_0012c012;\n                pcVar14 = "AFTER";\n              }" ({ "{") (if_statement "if (uVar22 != 0xff01) goto LAB_0012c012;" (if "if") (parenthesized_expression "(uVar22 != 0xff01)" (( "(") (binary_expression "uVar22 != 0xff01" (identifier "uVar22") (!= "!=") (number_literal "0xff01")) () ")")) (goto_statement "goto LAB_0012c012;" (goto "goto") (statement_identifier "LAB_0012c012") (; ";"))) (expression_statement "pcVar14 = "AFTER";" (assignment_expression "pcVar14 = "AFTER"" (identifier "pcVar14") (= "=") (string_literal ""AFTER"" (" """) (string_content "AFTER") (" """))) (; ";")) (} "}"))))) (if_statement "if (DAT_0019348c == 0) goto LAB_0012c248;" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012c248;" (goto "goto") (statement_identifier "LAB_0012c248") (; ";"))) (expression_statement "printf("<%s> ",pcVar14);" (call_expression "printf("<%s> ",pcVar14)" (identifier "printf") (argument_list "("<%s> ",pcVar14)" (( "(") (string_literal ""<%s> "" (" """) (string_content "<%s> ") (" """)) (, ",") (identifier "pcVar14") () ")"))) (; ";")) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" (identifier "printf") (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" (( "(") (string_literal ""%3u %2lu\n"" (" """) (string_content "%3u %2lu") (escape_sequence "\n") (" """)) (, ",") (cast_expression "(ulong)puVar24[0xb]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xc)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xc)" (( "(") (binary_expression "puVar24 + 0xc" (identifier "puVar24") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";")) (} "}")) (else_clause "else {\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" (else "else") (compound_statement "{\n              if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }\n              if (uVar6 == 6) goto LAB_0012c0c0;\n              if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;\nLAB_0012c012:\n              pcVar14 = "";\n              if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }\n            }" ({ "{") (if_statement "if (0x12 < uVar6) {\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }" (if "if") (parenthesized_expression "(0x12 < uVar6)" (( "(") (binary_expression "0x12 < uVar6" (number_literal "0x12") (< "<") (identifier "uVar6")) () ")")) (compound_statement "{\n                if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }\n                goto LAB_0012c0c0;\n              }" ({ "{") (if_statement "if (uVar6 != 0x3e) {\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }" (if "if") (parenthesized_expression "(uVar6 != 0x3e)" (( "(") (binary_expression "uVar6 != 0x3e" (identifier "uVar6") (!= "!=") (number_literal "0x3e")) () ")")) (compound_statement "{\n                  if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }\n                  if (uVar6 != 0x2b) goto LAB_0012c012;\n                }" ({ "{") (if_statement "if (0x3e < uVar6) {\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }" (if "if") (parenthesized_expression "(0x3e < uVar6)" (( "(") (binary_expression "0x3e < uVar6" (number_literal "0x3e") (< "<") (identifier "uVar6")) () ")")) (compound_statement "{\n                    uVar6 = uVar6 - 0xb4;\n                    goto joined_r0x0012c138;\n                  }" ({ "{") (expression_statement "uVar6 = uVar6 - 0xb4;" (assignment_expression "uVar6 = uVar6 - 0xb4" (identifier "uVar6") (= "=") (binary_expression "uVar6 - 0xb4" (identifier "uVar6") (- "-") (number_literal "0xb4"))) (; ";")) (goto_statement "goto joined_r0x0012c138;" (goto "goto") (statement_identifier "joined_r0x0012c138") (; ";")) (} "}"))) (if_statement "if (uVar6 != 0x2b) goto LAB_0012c012;" (if "if") (parenthesized_expression "(uVar6 != 0x2b)" (( "(") (binary_expression "uVar6 != 0x2b" (identifier "uVar6") (!= "!=") (number_literal "0x2b")) () ")")) (goto_statement "goto LAB_0012c012;" (goto "goto") (statement_identifier "LAB_0012c012") (; ";"))) (} "}"))) (goto_statement "goto LAB_0012c0c0;" (goto "goto") (statement_identifier "LAB_0012c0c0") (; ";")) (} "}"))) (if_statement "if (uVar6 == 6) goto LAB_0012c0c0;" (if "if") (parenthesized_expression "(uVar6 == 6)" (( "(") (binary_expression "uVar6 == 6" (identifier "uVar6") (== "==") (number_literal "6")) () ")")) (goto_statement "goto LAB_0012c0c0;" (goto "goto") (statement_identifier "LAB_0012c0c0") (; ";"))) (if_statement "if (uVar6 < 7) {\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }\n              else if (uVar6 == 0xb) goto LAB_0012c0c0;" (if "if") (parenthesized_expression "(uVar6 < 7)" (( "(") (binary_expression "uVar6 < 7" (identifier "uVar6") (< "<") (number_literal "7")) () ")")) (compound_statement "{\n                uVar6 = uVar6 - 2;\njoined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;\n              }" ({ "{") (expression_statement "uVar6 = uVar6 - 2;" (assignment_expression "uVar6 = uVar6 - 2" (identifier "uVar6") (= "=") (binary_expression "uVar6 - 2" (identifier "uVar6") (- "-") (number_literal "2"))) (; ";")) (labeled_statement "joined_r0x0012c138:\n                if (uVar6 < 2) goto LAB_0012c0c0;" (statement_identifier "joined_r0x0012c138") (: ":") (if_statement "if (uVar6 < 2) goto LAB_0012c0c0;" (if "if") (parenthesized_expression "(uVar6 < 2)" (( "(") (binary_expression "uVar6 < 2" (identifier "uVar6") (< "<") (number_literal "2")) () ")")) (goto_statement "goto LAB_0012c0c0;" (goto "goto") (statement_identifier "LAB_0012c0c0") (; ";")))) (} "}")) (else_clause "else if (uVar6 == 0xb) goto LAB_0012c0c0;" (else "else") (if_statement "if (uVar6 == 0xb) goto LAB_0012c0c0;" (if "if") (parenthesized_expression "(uVar6 == 0xb)" (( "(") (binary_expression "uVar6 == 0xb" (identifier "uVar6") (== "==") (number_literal "0xb")) () ")")) (goto_statement "goto LAB_0012c0c0;" (goto "goto") (statement_identifier "LAB_0012c0c0") (; ";"))))) (labeled_statement "LAB_0012c012:\n              pcVar14 = "";" (statement_identifier "LAB_0012c012") (: ":") (expression_statement "pcVar14 = "";" (assignment_expression "pcVar14 = """ (identifier "pcVar14") (= "=") (string_literal """" (" """) (" """))) (; ";"))) (if_statement "if (DAT_0019348c == 0) {\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }\n              else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));\n              }" ({ "{") (labeled_statement "LAB_0012c248:\n                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));" (statement_identifier "LAB_0012c248") (: ":") (expression_statement "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc))" (identifier "printf") (argument_list "("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],\n                       *(undefined8 *)(puVar24 + 0xc))" (( "(") (string_literal ""%2u %3u %2lu\n"" (" """) (string_content "%2u %3u %2lu") (escape_sequence "\n") (" """)) (, ",") (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) (, ",") (cast_expression "(ulong)puVar24[0xb]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xc)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xc)" (( "(") (binary_expression "puVar24 + 0xc" (identifier "puVar24") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";"))) (} "}")) (else_clause "else {\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" (else "else") (compound_statement "{\n                pcVar14 = "";\n                printf("%2u ");\n                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));\n              }" ({ "{") (expression_statement "pcVar14 = "";" (assignment_expression "pcVar14 = """ (identifier "pcVar14") (= "=") (string_literal """" (" """) (" """))) (; ";")) (expression_statement "printf("%2u ");" (call_expression "printf("%2u ")" (identifier "printf") (argument_list "("%2u ")" (( "(") (string_literal ""%2u "" (" """) (string_content "%2u ") (" """)) () ")"))) (; ";")) (expression_statement "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));" (call_expression "printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" (identifier "printf") (argument_list "("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc))" (( "(") (string_literal ""%3u %2lu\n"" (" """) (string_content "%3u %2lu") (escape_sequence "\n") (" """)) (, ",") (cast_expression "(ulong)puVar24[0xb]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (subscript_expression "puVar24[0xb]" (identifier "puVar24") ([ "[") (number_literal "0xb") (] "]"))) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 0xc)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 0xc)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 0xc)" (( "(") (binary_expression "puVar24 + 0xc" (identifier "puVar24") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";")) (} "}")))) (} "}")))) (if_statement "if (*pcVar14 == '\0') {\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }" (if "if") (parenthesized_expression "(*pcVar14 == '\0')" (( "(") (binary_expression "*pcVar14 == '\0'" (pointer_expression "*pcVar14" (* "*") (identifier "pcVar14")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n              uVar22 = puVar24[10];\n              uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);\n              warn(uVar12,uVar17,uVar22);\n            }" ({ "{") (expression_statement "uVar22 = puVar24[10];" (assignment_expression "uVar22 = puVar24[10]" (identifier "uVar22") (= "=") (subscript_expression "puVar24[10]" (identifier "puVar24") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5);" (assignment_expression "uVar12 = dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" (identifier "dcgettext") (argument_list "(0,\n                                 "section %u: sh_link value of %u is larger than the number of sections\n"\n                                 ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""section %u: sh_link value of %u is larger than the number of sections\n"" (" """) (string_content "section %u: sh_link value of %u is larger than the number of sections") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,uVar17,uVar22);" (call_expression "warn(uVar12,uVar17,uVar22)" (identifier "warn") (argument_list "(uVar12,uVar17,uVar22)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar17") (, ",") (identifier "uVar22") () ")"))) (; ";")) (} "}"))) (} "}")))) (} "}")))) (if_statement "if (DAT_0019348c == 0) {\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }" (if "if") (parenthesized_expression "(DAT_0019348c == 0)" (( "(") (binary_expression "DAT_0019348c == 0" (identifier "DAT_0019348c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);\n          uVar16 = (int)uVar17 + 1;\n          uVar17 = (ulong)uVar16;\n          puVar24 = puVar24 + 0x14;\n          if (uVar22 <= uVar16) break;\n          goto LAB_0012b043;\n        }" ({ "{") (labeled_statement "LAB_0012b030:\n          uVar22 = *(uint *)(param_1 + 100);" (statement_identifier "LAB_0012b030") (: ":") (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) (; ";"))) (expression_statement "uVar16 = (int)uVar17 + 1;" (assignment_expression "uVar16 = (int)uVar17 + 1" (identifier "uVar16") (= "=") (binary_expression "(int)uVar17 + 1" (cast_expression "(int)uVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar17")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar17 = (ulong)uVar16;" (assignment_expression "uVar17 = (ulong)uVar16" (identifier "uVar17") (= "=") (cast_expression "(ulong)uVar16" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar16"))) (; ";")) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" (identifier "puVar24") (= "=") (binary_expression "puVar24 + 0x14" (identifier "puVar24") (+ "+") (number_literal "0x14"))) (; ";")) (if_statement "if (uVar22 <= uVar16) break;" (if "if") (parenthesized_expression "(uVar22 <= uVar16)" (( "(") (binary_expression "uVar22 <= uVar16" (identifier "uVar22") (<= "<=") (identifier "uVar16")) () ")")) (break_statement "break;" (break "break") (; ";"))) (goto_statement "goto LAB_0012b043;" (goto "goto") (statement_identifier "LAB_0012b043") (; ";")) (} "}"))) (expression_statement "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));" (assignment_expression "uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (identifier "uVar12") (= "=") (call_expression "FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (identifier "FUN_0012a330") (argument_list "(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2))" (( "(") (binary_expression "param_1 + 0x1f" (identifier "param_1") (+ "+") (number_literal "0x1f")) (, ",") (binary_expression "param_1 + 0x52" (identifier "param_1") (+ "+") (number_literal "0x52")) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 2)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 2)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 2)" (( "(") (binary_expression "puVar24 + 2" (identifier "puVar24") (+ "+") (number_literal "2")) () ")")))) () ")")))) (; ";")) (expression_statement "printf("       %s\n",uVar12);" (call_expression "printf("       %s\n",uVar12)" (identifier "printf") (argument_list "("       %s\n",uVar12)" (( "(") (string_literal ""       %s\n"" (" """) (string_content "       %s") (escape_sequence "\n") (" """)) (, ",") (identifier "uVar12") () ")"))) (; ";")) (if_statement "if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;" (if "if") (parenthesized_expression "((*(byte *)((long)puVar24 + 9) & 8) == 0)" (( "(") (binary_expression "(*(byte *)((long)puVar24 + 9) & 8) == 0" (parenthesized_expression "(*(byte *)((long)puVar24 + 9) & 8)" (( "(") (binary_expression "*(byte *)((long)puVar24 + 9) & 8" (pointer_expression "*(byte *)((long)puVar24 + 9)" (* "*") (cast_expression "(byte *)((long)puVar24 + 9)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar24 + 9)" (( "(") (binary_expression "(long)puVar24 + 9" (cast_expression "(long)puVar24" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar24")) (+ "+") (number_literal "9")) () ")")))) (& "&") (number_literal "8")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012b030;" (goto "goto") (statement_identifier "LAB_0012b030") (; ";"))) (expression_statement "uVar12 = dcgettext(0,"compression header",5);" (assignment_expression "uVar12 = dcgettext(0,"compression header",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"compression header",5)" (identifier "dcgettext") (argument_list "(0,"compression header",5)" (( "(") (number_literal "0") (, ",") (string_literal ""compression header"" (" """) (string_content "compression header") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12);" (assignment_expression "lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" (identifier "lVar20") (= "=") (call_expression "FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" (identifier "FUN_001144a0") (argument_list "(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,\n                              0x18,uVar12)" (( "(") (identifier "local_88") (, ",") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) (, ",") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) (, ",") (pointer_expression "*(undefined8 *)(puVar24 + 6)" (* "*") (cast_expression "(undefined8 *)(puVar24 + 6)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar24 + 6)" (( "(") (binary_expression "puVar24 + 6" (identifier "puVar24") (+ "+") (number_literal "6")) () ")")))) (, ",") (number_literal "1") (, ",") (number_literal "0x18") (, ",") (identifier "uVar12") () ")")))) (; ";")) (if_statement "if (lVar20 == 0) goto LAB_0012b030;" (if "if") (parenthesized_expression "(lVar20 == 0)" (( "(") (binary_expression "lVar20 == 0" (identifier "lVar20") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012b030;" (goto "goto") (statement_identifier "LAB_0012b030") (; ";"))) (expression_statement "FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);" (call_expression "FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8)" (identifier "FUN_0010ffa0") (argument_list "(local_68,local_88,0x18,0x12bbf8)" (( "(") (identifier "local_68") (, ",") (identifier "local_88") (, ",") (number_literal "0x18") (, ",") (number_literal "0x12bbf8") () ")"))) (; ";")) (expression_statement "uVar22 = local_68[0];" (assignment_expression "uVar22 = local_68[0]" (identifier "uVar22") (= "=") (subscript_expression "local_68[0]" (identifier "local_68") ([ "[") (number_literal "0") (] "]"))) (; ";")) (if_statement "if (local_68[0] == 1) {\n          printf("       ZLIB, ");\n        }\n        else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" (if "if") (parenthesized_expression "(local_68[0] == 1)" (( "(") (binary_expression "local_68[0] == 1" (subscript_expression "local_68[0]" (identifier "local_68") ([ "[") (number_literal "0") (] "]")) (== "==") (number_literal "1")) () ")")) (compound_statement "{\n          printf("       ZLIB, ");\n        }" ({ "{") (expression_statement "printf("       ZLIB, ");" (call_expression "printf("       ZLIB, ")" (identifier "printf") (argument_list "("       ZLIB, ")" (( "(") (string_literal ""       ZLIB, "" (" """) (string_content "       ZLIB, ") (" """)) () ")"))) (; ";")) (} "}")) (else_clause "else {\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" (else "else") (compound_statement "{\n          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);\n          printf(pcVar14,(ulong)uVar22);\n        }" ({ "{") (expression_statement "pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,"       [<unknown>: 0x%x], ",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"       [<unknown>: 0x%x], ",5)" (identifier "dcgettext") (argument_list "(0,"       [<unknown>: 0x%x], ",5)" (( "(") (number_literal "0") (, ",") (string_literal ""       [<unknown>: 0x%x], "" (" """) (string_content "       [<unknown>: 0x%x], ") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14,(ulong)uVar22);" (call_expression "printf(pcVar14,(ulong)uVar22)" (identifier "printf") (argument_list "(pcVar14,(ulong)uVar22)" (( "(") (identifier "pcVar14") (, ",") (cast_expression "(ulong)uVar22" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar22")) () ")"))) (; ";")) (} "}")))) (expression_statement "uVar16 = (int)uVar17 + 1;" (assignment_expression "uVar16 = (int)uVar17 + 1" (identifier "uVar16") (= "=") (binary_expression "(int)uVar17 + 1" (cast_expression "(int)uVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar17")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar17 = (ulong)uVar16;" (assignment_expression "uVar17 = (ulong)uVar16" (identifier "uVar17") (= "=") (cast_expression "(ulong)uVar16" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar16"))) (; ";")) (expression_statement "puVar24 = puVar24 + 0x14;" (assignment_expression "puVar24 = puVar24 + 0x14" (identifier "puVar24") (= "=") (binary_expression "puVar24 + 0x14" (identifier "puVar24") (+ "+") (number_literal "0x14"))) (; ";")) (expression_statement "FUN_001116b0(local_60,6);" (call_expression "FUN_001116b0(local_60,6)" (identifier "FUN_001116b0") (argument_list "(local_60,6)" (( "(") (identifier "local_60") (, ",") (number_literal "6") () ")"))) (; ";")) (expression_statement "printf(", %lu\n",local_58);" (call_expression "printf(", %lu\n",local_58)" (identifier "printf") (argument_list "(", %lu\n",local_58)" (( "(") (string_literal "", %lu\n"" (" """) (string_content ", %lu") (escape_sequence "\n") (" """)) (, ",") (identifier "local_58") () ")"))) (; ";")) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar16 < uVar22)" (( "(") (binary_expression "uVar16 < uVar22" (identifier "uVar16") (< "<") (identifier "uVar22")) () ")")) (; ";"))) (goto_statement "goto LAB_0012bca8;" (goto "goto") (statement_identifier "LAB_0012bca8") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" (else "else") (compound_statement "{\n    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);\n    printf(pcVar14);\n    uVar22 = *(uint *)(param_1 + 100);\n    puVar24 = *(uint **)(param_1 + 0x70);\n    if (uVar22 != 0) goto LAB_0012ae50;\nLAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }\n  }" ({ "{") (expression_statement "pcVar14 = (char *)dcgettext(0,"       Flags\n",5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,"       Flags\n",5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,"       Flags\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"       Flags\n",5)" (identifier "dcgettext") (argument_list "(0,"       Flags\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""       Flags\n"" (" """) (string_content "       Flags") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (expression_statement "uVar22 = *(uint *)(param_1 + 100);" (assignment_expression "uVar22 = *(uint *)(param_1 + 100)" (identifier "uVar22") (= "=") (pointer_expression "*(uint *)(param_1 + 100)" (* "*") (cast_expression "(uint *)(param_1 + 100)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 100)" (( "(") (binary_expression "param_1 + 100" (identifier "param_1") (+ "+") (number_literal "100")) () ")"))))) (; ";")) (expression_statement "puVar24 = *(uint **)(param_1 + 0x70);" (assignment_expression "puVar24 = *(uint **)(param_1 + 0x70)" (identifier "puVar24") (= "=") (pointer_expression "*(uint **)(param_1 + 0x70)" (* "*") (cast_expression "(uint **)(param_1 + 0x70)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (if_statement "if (uVar22 != 0) goto LAB_0012ae50;" (if "if") (parenthesized_expression "(uVar22 != 0)" (( "(") (binary_expression "uVar22 != 0" (identifier "uVar22") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0012ae50;" (goto "goto") (statement_identifier "LAB_0012ae50") (; ";"))) (labeled_statement "LAB_0012bca8:\n    if (DAT_0019348c != 0) {\n      return 1;\n    }" (statement_identifier "LAB_0012bca8") (: ":") (if_statement "if (DAT_0019348c != 0) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(DAT_0019348c != 0)" (( "(") (binary_expression "DAT_0019348c != 0" (identifier "DAT_0019348c") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))) (} "}")))) (expression_statement "pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" (identifier "dcgettext") (argument_list "(0,\n                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "\n                              ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "" (" """) (string_content "Key to Flags:") (escape_sequence "\n") (string_content "  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),") (escape_sequence "\n") (string_content "  L (link order), O (extra OS processing required), G (group), T (TLS),") (escape_sequence "\n") (string_content "  C (compressed), x (unknown), o (OS specific), E (exclude),") (escape_sequence "\n") (string_content "  ") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (expression_statement "sVar1 = *(short *)(param_1 + 0x52);" (assignment_expression "sVar1 = *(short *)(param_1 + 0x52)" (identifier "sVar1") (= "=") (pointer_expression "*(short *)(param_1 + 0x52)" (* "*") (cast_expression "(short *)(param_1 + 0x52)" (( "(") (type_descriptor "short *" (sized_type_specifier "short" (short "short")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x52)" (( "(") (binary_expression "param_1 + 0x52" (identifier "param_1") (+ "+") (number_literal "0x52")) () ")"))))) (; ";")) (if_statement "if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {\n    pcVar14 = "l (large), ";\n  }\n  else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" (if "if") (parenthesized_expression "(((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e))" (( "(") (binary_expression "((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)" (parenthesized_expression "((ushort)(sVar1 - 0xb4U) < 2)" (( "(") (binary_expression "(ushort)(sVar1 - 0xb4U) < 2" (call_expression "(ushort)(sVar1 - 0xb4U)" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (argument_list "(sVar1 - 0xb4U)" (( "(") (binary_expression "sVar1 - 0xb4U" (identifier "sVar1") (- "-") (number_literal "0xb4U")) () ")"))) (< "<") (number_literal "2")) () ")")) (|| "||") (parenthesized_expression "(sVar1 == 0x3e)" (( "(") (binary_expression "sVar1 == 0x3e" (identifier "sVar1") (== "==") (number_literal "0x3e")) () ")"))) () ")")) (compound_statement "{\n    pcVar14 = "l (large), ";\n  }" ({ "{") (expression_statement "pcVar14 = "l (large), ";" (assignment_expression "pcVar14 = "l (large), "" (identifier "pcVar14") (= "=") (string_literal ""l (large), "" (" """) (string_content "l (large), ") (" """))) (; ";")) (} "}")) (else_clause "else {\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" (else "else") (compound_statement "{\n    pcVar14 = "y (purecode), ";\n    if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }\n  }" ({ "{") (expression_statement "pcVar14 = "y (purecode), ";" (assignment_expression "pcVar14 = "y (purecode), "" (identifier "pcVar14") (= "=") (string_literal ""y (purecode), "" (" """) (string_content "y (purecode), ") (" """))) (; ";")) (if_statement "if (sVar1 != 0x28) {\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }" (if "if") (parenthesized_expression "(sVar1 != 0x28)" (( "(") (binary_expression "sVar1 != 0x28" (identifier "sVar1") (!= "!=") (number_literal "0x28")) () ")")) (compound_statement "{\n      if (sVar1 != 0x14) goto LAB_0012bd12;\n      pcVar14 = "v (VLE), ";\n    }" ({ "{") (if_statement "if (sVar1 != 0x14) goto LAB_0012bd12;" (if "if") (parenthesized_expression "(sVar1 != 0x14)" (( "(") (binary_expression "sVar1 != 0x14" (identifier "sVar1") (!= "!=") (number_literal "0x14")) () ")")) (goto_statement "goto LAB_0012bd12;" (goto "goto") (statement_identifier "LAB_0012bd12") (; ";"))) (expression_statement "pcVar14 = "v (VLE), ";" (assignment_expression "pcVar14 = "v (VLE), "" (identifier "pcVar14") (= "=") (string_literal ""v (VLE), "" (" """) (string_content "v (VLE), ") (" """))) (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar14 = (char *)dcgettext(0,pcVar14,5);" (assignment_expression "pcVar14 = (char *)dcgettext(0,pcVar14,5)" (identifier "pcVar14") (= "=") (cast_expression "(char *)dcgettext(0,pcVar14,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar14,5)" (identifier "dcgettext") (argument_list "(0,pcVar14,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar14") (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar14);" (call_expression "printf(pcVar14)" (identifier "printf") (argument_list "(pcVar14)" (( "(") (identifier "pcVar14") () ")"))) (; ";")) (labeled_statement "LAB_0012bd12:\n  puts("p (processor specific)");" (statement_identifier "LAB_0012bd12") (: ":") (expression_statement "puts("p (processor specific)");" (call_expression "puts("p (processor specific)")" (identifier "puts") (argument_list "("p (processor specific)")" (( "(") (string_literal ""p (processor specific)"" (" """) (string_content "p (processor specific)") (" """)) () ")"))) (; ";"))) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))

type_1 function_1(type_2 *filedata)

{
  type_3 bVar1;
  type_1 var_23;
  int var_48;
  int var_49;
  int var_50;
  type_4 uVar6;
  type_5 var_65;
  type_6 var_14;
  int var_11;
  int var_47;
  type_5 *var_45;
  type_7 var_63;
  type_8 *peVar13;
  type_9 *var_17;
  type_2 *pFVar15;
  type_2 *filedata_1;
  void *var_73;
  type_10 *pFVar17;
  char *var_13;
  long var_25;
  type_11 var_18;
  type_7 uVar21;
  type_5 *var_26;
  type_12 var_59;
  char *__format;
  type_5 *var_27;
  type_11 var_1;
  type_11 var_62;
  type_9 *var_15;
  bool var_28;
  bool var_51;
  type_13 uVar29;
  bool var_52;
  type_13 uVar31;
  type_5 bVar32;
  type_14 buf_3 [24];
  char buf [40];
  
  bVar32 = 0;
  var_1 = (filedata->file_header).e_shnum;
  filedata->section_headers = (type_9 *)0x0;
  if (var_1 == 0) {
    if ((filedata->file_header).e_shoff != 0) {
      var_13 = (char *)var_2(0,
                                  "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"
                                  ,5);
      var_3(var_13);
      return 0;
    }
    if (var_4 == 0) {
      return 1;
    }
    var_13 = (char *)var_2(0,"\nThere are no sections in this file.\n",5);
    var_5(var_13);
    return 1;
  }
  if ((var_4 != 0) && (var_6 == 0)) {
    var_59 = (filedata->file_header).e_shoff;
    var_13 = (char *)var_7(0,"There is %d section header, starting at offset 0x%lx:\n",
                                 "There are %d section headers, starting at offset 0x%lx:\n",var_1,
                                 5);
    var_5(var_13,(type_7)var_1,var_59);
  }
  if (var_8 == 0) {
    var_11 = var_9(filedata,0);
  }
  else {
    var_11 = var_10(filedata,0);
  }
  if (var_11 == 0) {
    return 0;
  }
  var_1 = (filedata->file_header).e_shstrndx;
  var_15 = filedata->section_headers;
  if (((var_1 != 0) && (var_1 < (filedata->file_header).e_shnum)) &&
     (var_15[var_1].sh_size != 0)) {
    pFVar15 = (type_2 *)var_2(0,"string table",5);
    var_13 = (char *)var_12((void *)0x0,(type_2 *)&filedata->handle,(type_7)&filedata->file_size
                               ,var_15[var_1].sh_offset,1,(char *)var_15[var_1].sh_size,pFVar15)
    ;
    var_59 = 0;
    filedata->string_table = var_13;
    if (var_13 != (char *)0x0) {
      var_59 = var_15[var_1].sh_size;
    }
    filedata->string_table_length = var_59;
    var_15 = filedata->section_headers;
  }
  var_19 = (type_15 *)0x0;
  var_29 = (char *)0x0;
  dynamic_syminfo = (type_16 *)0x0;
  symtab_shndx_list = (type_8 *)0x0;
  eh_addr_size = (-(type_11)(var_8 == 0) & 4) + 4;
  var_14 = (filedata->file_header).e_machine;
  if (var_14 < 0x30) {
    if (var_14 < 0x2e) {
      if (((var_14 == 8) || (var_14 == 10)) &&
         (((type_11)(filedata->file_header).e_flags & 0xf000) == 0x4000)) {
        if (var_15 != (type_9 *)0x0) {
          var_17 = var_16(filedata,".gcc_compiled_long32");
          var_15 = filedata->section_headers;
          if (var_17 != (type_9 *)0x0) goto LAB_0012ad0a;
        }
        eh_addr_size = 8;
      }
    }
    else {
      var_1 = (type_11)(filedata->file_header).e_flags & 0xff0000;
      if (var_1 != 0x830000) {
        if (var_1 < 0x830001) {
          if ((var_1 == 0x810000) || (var_1 == 0x820000)) {
LAB_0012c4d0:
            eh_addr_size = 4;
            goto LAB_0012ad0a;
          }
          if (var_1 != 0x800000) goto LAB_0012ad0a;
        }
        else {
          if (var_1 == 0x850000) goto LAB_0012c4d0;
          if ((var_1 != 0x860000) && (var_1 != 0x840000)) goto LAB_0012ad0a;
        }
      }
LAB_0012b791:
      eh_addr_size = 2;
    }
  }
  else if (((var_14 == 0x78) || (var_14 == 0xfeb0)) &&
          (((type_11)(filedata->file_header).e_flags & 0x7f) == 0x75)) goto LAB_0012b791;
LAB_0012ad0a:
  if ((filedata->file_header).e_shnum == 0) {
    if (var_4 == 0) {
      return 1;
    }
LAB_0012c296:
    var_13 = "\nSection Header:\n";
  }
  else {
    var_1 = 0;
    do {
      if (var_15 == (type_9 *)0x0) {
        var_45 = (type_5 *)var_2(0,"<none>",5);
      }
      else if (filedata->string_table == (char *)0x0) {
        var_45 = (type_5 *)var_2(0,"<no-strings>",5);
      }
      else {
        var_45 = (type_5 *)(filedata->string_table + var_15->sh_name);
        if (filedata->string_table_length <= (type_7)var_15->sh_name) {
          var_45 = (type_5 *)var_2(0,"<corrupt>",5);
        }
      }
      var_50 = var_41;
      var_49 = var_40;
      var_48 = var_38;
      var_11 = var_37;
      var_18 = var_15->sh_type;
      if (var_18 == 0xb) {
        var_13 = "File contains multiple dynamic symbol tables\n";
        if (var_19 == (type_15 *)0x0) {
          if (var_8 == 0) {
            if (var_15->sh_entsize != 0x18) {
              var_18 = 0x18;
              var_59 = 0x18;
              goto LAB_0012b923;
            }
LAB_0012b7d2:
            var_19 = var_20(filedata,var_15,&num_dynamic_syms);
          }
          else {
            if (var_15->sh_entsize != 0x10) {
              var_18 = 0x10;
              var_59 = 0x10;
LAB_0012b923:
              var_21(buf,"%016lx");
              var_13 = (char *)var_2(0,"Section %d has invalid sh_entsize of %s\n",5);
              var_22(var_13,(type_7)var_1,buf);
              var_13 = (char *)var_2(0,
                                          "(Using the expected size of %u for the rest of this dump)\n"
                                          ,5);
              var_22(var_13,(type_7)var_18);
              var_23 = var_8;
              var_15->sh_entsize = var_59;
              if (var_23 == 0) goto LAB_0012b7d2;
            }
            var_19 = var_24(filedata,var_15,&num_dynamic_syms);
          }
        }
        else {
LAB_0012b69a:
          var_13 = (char *)var_2(0,var_13,5);
          var_22(var_13);
        }
      }
      else {
        var_28 = var_18 < 3;
        var_52 = var_18 == 3;
        if (var_52) {
          var_25 = 8;
          var_26 = var_45;
          var_27 = (type_5 *)".dynstr";
          do {
            if (var_25 == 0) break;
            var_25 = var_25 + -1;
            var_28 = *var_26 < *var_27;
            var_52 = *var_26 == *var_27;
            var_26 = var_26 + (type_7)bVar32 * -2 + 1;
            var_27 = var_27 + (type_7)bVar32 * -2 + 1;
          } while (var_52);
          if ((!var_28 && !var_52) == var_28) {
            if (var_29 != (char *)0x0) {
              var_13 = "File contains multiple dynamic string tables\n";
              goto LAB_0012b69a;
            }
            pFVar15 = (type_2 *)var_2(0,"dynamic strings",5);
            var_29 =
                 (char *)var_12((void *)0x0,(type_2 *)&filedata->handle,
                                  (type_7)&filedata->file_size,var_15->sh_offset,1,
                                  (char *)var_15->sh_size,pFVar15);
            dynamic_strings_length = 0;
            if (var_29 != (char *)0x0) {
              dynamic_strings_length = var_15->sh_size;
            }
          }
          else {
LAB_0012b1ff:
            var_28 = false;
            var_52 = ((((((((((((var_30 == 0 && var_31 == 0) &&
                               var_32 == 0) && var_33 == 0) &&
                             var_34 == 0) && var_35 == 0) &&
                           var_36 == 0) && var_37 == 0) && var_38 == 0) &&
                        var_39 == 0) && var_40 == 0) && var_41 == 0) &&
                     var_42 == 0) && (var_43 == 0 && var_44 == 0);
            if (((((((((((((var_30 == 0 && var_31 == 0) && var_32 == 0)
                         && var_33 == 0) && var_34 == 0) &&
                       var_35 == 0) && var_36 == 0) && var_37 == 0) &&
                    var_38 == 0) && var_39 == 0) && var_40 == 0) &&
                 var_41 == 0) && var_42 == 0) &&
                (var_43 == 0 && var_44 == 0)) goto LAB_0012b2b0;
            var_25 = 7;
            var_26 = var_45;
            var_27 = (type_5 *)".debug_";
            do {
              if (var_25 == 0) break;
              var_25 = var_25 + -1;
              var_28 = *var_26 < *var_27;
              var_52 = *var_26 == *var_27;
              var_26 = var_26 + (type_7)bVar32 * -2 + 1;
              var_27 = var_27 + (type_7)bVar32 * -2 + 1;
            } while (var_52);
            var_51 = false;
            var_28 = (!var_28 && !var_52) == var_28;
            if (var_28) {
LAB_0012b3f7:
              var_26 = var_45 + 7;
              if (var_45[1] == 0x7a) {
                var_26 = var_45 + 8;
              }
              if (var_44 == 0) {
                var_52 = false;
                var_28 = var_43 == 0;
                if (var_28) {
LAB_0012b446:
                  var_28 = false;
                  var_52 = var_30 == 0;
                  if (!var_52) {
                    var_25 = 6;
                    var_45 = var_26;
                    var_27 = (type_5 *)0x1826c0;
                    do {
                      if (var_25 == 0) break;
                      var_25 = var_25 + -1;
                      var_28 = *var_45 < *var_27;
                      var_52 = *var_45 == *var_27;
                      var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                      var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                    } while (var_52);
                    if ((!var_28 && !var_52) == var_28) goto LAB_0012b3c0;
                  }
                  var_28 = false;
                  var_52 = var_31 == 0;
                  if (var_52) {
LAB_0012b490:
                    var_28 = false;
                    var_52 = var_32 == 0;
                    if (var_52) {
                      var_28 = false;
                      var_52 = var_33 == 0;
                      if (var_52) {
LAB_0012b4dd:
                        var_28 = false;
                        var_52 = var_34 == 0;
                        if (!var_52) {
                          var_25 = 7;
                          var_45 = var_26;
                          var_27 = (type_5 *)0x1826ce;
                          do {
                            if (var_25 == 0) break;
                            var_25 = var_25 + -1;
                            var_28 = *var_45 < *var_27;
                            var_52 = *var_45 == *var_27;
                            var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                            var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                          } while (var_52);
                          if ((!var_28 && !var_52) == var_28) goto LAB_0012b3c0;
                        }
                        var_28 = false;
                        var_52 = var_39 == 0;
                        if (var_52) {
LAB_0012b547:
                          var_28 = false;
                          var_52 = var_35 == 0;
                          if (!var_52) {
                            var_25 = 5;
                            var_45 = var_26;
                            var_27 = (type_5 *)0x18246b;
                            do {
                              if (var_25 == 0) break;
                              var_25 = var_25 + -1;
                              var_28 = *var_45 < *var_27;
                              var_52 = *var_45 == *var_27;
                              var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                              var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                            } while (var_52);
                            if ((!var_28 && !var_52) == var_28) goto LAB_0012b3c0;
                          }
                          var_28 = false;
                          var_52 = var_36 == 0;
                          if (!var_52) {
                            var_25 = 7;
                            var_45 = var_26;
                            var_27 = (type_5 *)0x1824f6;
                            do {
                              if (var_25 == 0) break;
                              var_25 = var_25 + -1;
                              var_28 = *var_45 < *var_27;
                              var_52 = *var_45 == *var_27;
                              var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                              var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                            } while (var_52);
                            if (((!var_28 && !var_52) == var_28) ||
                               (var_47 = var_46((char *)var_26,"macro",5), var_47 == 0))
                            goto LAB_0012b3c0;
                          }
                          if (((((var_11 == 0) ||
                                (var_11 = var_46((char *)var_26,"str",3), var_11 != 0)) &&
                               ((var_48 == 0 ||
                                ((var_11 = var_46((char *)var_26,"loc",3), var_11 != 0 &&
                                 (var_11 = var_46((char *)var_26,"loclists",8), var_11 != 0)))))) &&
                              ((var_49 == 0 ||
                               (var_11 = var_46((char *)var_26,"addr",4), var_11 != 0)))) &&
                             ((var_50 == 0 ||
                              ((var_11 = var_46((char *)var_26,"cu_index",8), var_11 != 0 &&
                               (var_11 = var_46((char *)var_26,"tu_index",8), var_11 != 0))))))
                          goto LAB_0012ad90;
                        }
                        else {
                          var_25 = 6;
                          var_45 = var_26;
                          var_27 = (type_5 *)0x185a13;
                          do {
                            if (var_25 == 0) break;
                            var_25 = var_25 + -1;
                            var_28 = *var_45 < *var_27;
                            var_52 = *var_45 == *var_27;
                            var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                            var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                          } while (var_52);
                          var_51 = false;
                          var_28 = (!var_28 && !var_52) == var_28;
                          if (!var_28) {
                            var_25 = 8;
                            var_45 = var_26;
                            var_27 = (type_5 *)0x182607;
                            do {
                              if (var_25 == 0) break;
                              var_25 = var_25 + -1;
                              var_51 = *var_45 < *var_27;
                              var_28 = *var_45 == *var_27;
                              var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                              var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                            } while (var_28);
                            if ((!var_51 && !var_28) != var_51) goto LAB_0012b547;
                          }
                        }
                      }
                      else {
                        var_25 = 8;
                        var_45 = var_26;
                        var_27 = (type_5 *)0x1862bf;
                        do {
                          if (var_25 == 0) break;
                          var_25 = var_25 + -1;
                          var_28 = *var_45 < *var_27;
                          var_52 = *var_45 == *var_27;
                          var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                          var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                        } while (var_52);
                        var_28 = (!var_28 && !var_52) == var_28;
joined_r0x0012c500:
                        if (!var_28) {
                          var_13 = ".debug_gnu_pubtypes";
LAB_0012b4cb:
                          var_52 = false;
                          var_25 = 0xc;
                          var_45 = var_26;
                          var_27 = (type_5 *)(var_13 + 7);
                          do {
                            if (var_25 == 0) break;
                            var_25 = var_25 + -1;
                            var_52 = *var_45 < *var_27;
                            var_28 = *var_45 == *var_27;
                            var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                            var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                          } while (var_28);
                          if ((!var_52 && !var_28) != var_52) goto LAB_0012b4dd;
                        }
                      }
                    }
                    else {
                      var_25 = 8;
                      var_45 = var_26;
                      var_27 = (type_5 *)0x1862ac;
                      do {
                        if (var_25 == 0) break;
                        var_25 = var_25 + -1;
                        var_28 = *var_45 < *var_27;
                        var_52 = *var_45 == *var_27;
                        var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                        var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                      } while (var_52);
                      if ((!var_28 && !var_52) != var_28) {
                        var_13 = ".debug_gnu_pubnames";
                        var_52 = false;
                        var_28 = var_33 == 0;
                        if (var_28) goto LAB_0012b4cb;
                        var_25 = 8;
                        var_45 = var_26;
                        var_27 = (type_5 *)0x1862bf;
                        do {
                          if (var_25 == 0) break;
                          var_25 = var_25 + -1;
                          var_52 = *var_45 < *var_27;
                          var_28 = *var_45 == *var_27;
                          var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                          var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                        } while (var_28);
                        var_51 = false;
                        var_28 = (!var_52 && !var_28) == var_52;
                        if (!var_28) {
                          var_25 = 0xc;
                          var_45 = var_26;
                          var_27 = (type_5 *)0x1824cd;
                          do {
                            if (var_25 == 0) break;
                            var_25 = var_25 + -1;
                            var_51 = *var_45 < *var_27;
                            var_28 = *var_45 == *var_27;
                            var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                            var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                          } while (var_28);
                          var_28 = (!var_51 && !var_28) == var_51;
                          goto joined_r0x0012c500;
                        }
                      }
                    }
                  }
                  else {
                    var_25 = 5;
                    var_45 = var_26;
                    var_27 = (type_5 *)0x182493;
                    do {
                      if (var_25 == 0) break;
                      var_25 = var_25 + -1;
                      var_28 = *var_45 < *var_27;
                      var_52 = *var_45 == *var_27;
                      var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                      var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                    } while (var_52);
                    var_51 = false;
                    var_28 = (!var_28 && !var_52) == var_28;
                    if (!var_28) {
                      var_25 = 5;
                      var_45 = var_26;
                      var_27 = (type_5 *)0x16ac78;
                      do {
                        if (var_25 == 0) break;
                        var_25 = var_25 + -1;
                        var_51 = *var_45 < *var_27;
                        var_28 = *var_45 == *var_27;
                        var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                        var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                      } while (var_28);
                      if ((!var_51 && !var_28) != var_51) goto LAB_0012b490;
                    }
                  }
                }
                else {
                  var_25 = 4;
                  var_45 = var_26;
                  var_27 = (type_5 *)0x1663a6;
                  do {
                    if (var_25 == 0) break;
                    var_25 = var_25 + -1;
                    var_52 = *var_45 < *var_27;
                    var_28 = *var_45 == *var_27;
                    var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                    var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                  } while (var_28);
                  var_51 = false;
                  var_28 = (!var_52 && !var_28) == var_52;
                  if (!var_28) {
                    var_25 = 5;
                    var_45 = var_26;
                    var_27 = (type_5 *)0x1857df;
                    do {
                      if (var_25 == 0) break;
                      var_25 = var_25 + -1;
                      var_51 = *var_45 < *var_27;
                      var_28 = *var_45 == *var_27;
                      var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                      var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                    } while (var_28);
                    if ((!var_51 && !var_28) != var_51) goto LAB_0012b446;
                  }
                }
              }
            }
            else {
              var_25 = 8;
              var_26 = var_45;
              var_27 = (type_5 *)".zdebug_";
              do {
                if (var_25 == 0) break;
                var_25 = var_25 + -1;
                var_51 = *var_26 < *var_27;
                var_28 = *var_26 == *var_27;
                var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                var_27 = var_27 + (type_7)bVar32 * -2 + 1;
              } while (var_28);
              if ((!var_51 && !var_28) == var_51) goto LAB_0012b3f7;
              var_28 = false;
              var_52 = var_43 == 0 && var_44 == 0;
              if (var_52) {
LAB_0012b2b0:
                var_28 = false;
                var_52 = var_35 == 0;
                if (!var_52) {
                  var_25 = 10;
                  var_26 = var_45;
                  var_27 = (type_5 *)".eh_frame";
                  do {
                    if (var_25 == 0) break;
                    var_25 = var_25 + -1;
                    var_28 = *var_26 < *var_27;
                    var_52 = *var_26 == *var_27;
                    var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                    var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                  } while (var_52);
                  if ((!var_28 && !var_52) == var_28) goto LAB_0012b3c0;
                }
                var_28 = false;
                var_52 = var_53 == 0;
                if (var_52) {
LAB_0012b31e:
                  var_28 = false;
                  var_52 = var_44 == 0;
                  if (var_52) {
                    var_28 = false;
                    var_52 = var_54 == 0;
                    if (!var_52) {
                      var_25 = 7;
                      var_26 = var_45;
                      var_27 = (type_5 *)".trace_";
                      do {
                        if (var_25 == 0) break;
                        var_25 = var_25 + -1;
                        var_28 = *var_26 < *var_27;
                        var_52 = *var_26 == *var_27;
                        var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                        var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                      } while (var_52);
                      if ((!var_28 && !var_52) == var_28) {
                        var_28 = (type_5 *)0xfffffffffffffff8 < var_45;
                        var_52 = var_45 + 7 == (type_5 *)0x0;
                        var_25 = 5;
                        var_26 = var_45 + 7;
                        var_27 = (type_5 *)0x1663a6;
                        do {
                          if (var_25 == 0) break;
                          var_25 = var_25 + -1;
                          var_28 = *var_26 < *var_27;
                          var_52 = *var_26 == *var_27;
                          var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                          var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                        } while (var_52);
                        if ((!var_28 && !var_52) != var_28) goto LAB_0012b36f;
                        goto LAB_0012b3c0;
                      }
LAB_0012c5d2:
                      var_28 = var_42 == 0;
                      if (var_28) goto LAB_0012ad90;
                      goto LAB_0012c536;
                    }
                    var_28 = false;
                    var_52 = var_55 == 0 && var_56 == 0;
                    if (var_52) goto LAB_0012c5d2;
                    var_25 = 7;
                    var_26 = var_45;
                    var_27 = (type_5 *)".trace_";
                    do {
                      if (var_25 == 0) break;
                      var_25 = var_25 + -1;
                      var_28 = *var_26 < *var_27;
                      var_52 = *var_26 == *var_27;
                      var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                      var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                    } while (var_52);
                    if ((!var_28 && !var_52) != var_28) goto LAB_0012c5d2;
LAB_0012b36f:
                    var_28 = false;
                    var_52 = var_55 == 0;
                    if (!var_52) {
                      var_25 = 7;
                      var_26 = var_45 + 7;
                      var_27 = (type_5 *)0x1826c0;
                      do {
                        if (var_25 == 0) break;
                        var_25 = var_25 + -1;
                        var_28 = *var_26 < *var_27;
                        var_52 = *var_26 == *var_27;
                        var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                        var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                      } while (var_52);
                      if ((!var_28 && !var_52) == var_28) goto LAB_0012b3c0;
                    }
                    var_51 = false;
                    var_28 = var_56 == 0;
                    if (var_28) goto LAB_0012ad90;
                    var_25 = 8;
                    var_45 = var_45 + 7;
                    var_13 = (char *)(type_5 *)0x1826ce;
                  }
                  else {
                    var_25 = 7;
                    var_26 = var_45;
                    var_27 = (type_5 *)".trace_";
                    do {
                      if (var_25 == 0) break;
                      var_25 = var_25 + -1;
                      var_28 = *var_26 < *var_27;
                      var_52 = *var_26 == *var_27;
                      var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                      var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                    } while (var_52);
                    var_28 = (!var_28 && !var_52) == var_28;
                    if (var_28) goto LAB_0012b3c0;
LAB_0012c536:
                    var_52 = false;
                    var_25 = 0xe;
                    var_26 = var_45;
                    var_27 = (type_5 *)".gnu_debuglink";
                    do {
                      if (var_25 == 0) break;
                      var_25 = var_25 + -1;
                      var_52 = *var_26 < *var_27;
                      var_28 = *var_26 == *var_27;
                      var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                      var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                    } while (var_28);
                    var_51 = false;
                    var_28 = (!var_52 && !var_28) == var_52;
                    if (var_28) goto LAB_0012b3c0;
                    var_25 = 0x11;
                    var_13 = ".gnu_debugaltlink";
                  }
                  do {
                    if (var_25 == 0) break;
                    var_25 = var_25 + -1;
                    var_51 = *var_45 < (type_5)*var_13;
                    var_28 = *var_45 == *var_13;
                    var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                    var_13 = (char *)((type_5 *)var_13 + (type_7)bVar32 * -2 + 1);
                  } while (var_28);
                  if ((!var_51 && !var_28) != var_51) goto LAB_0012ad90;
                }
                else {
                  var_25 = 0xb;
                  var_26 = var_45;
                  var_27 = (type_5 *)".gdb_index";
                  do {
                    if (var_25 == 0) break;
                    var_25 = var_25 + -1;
                    var_28 = *var_26 < *var_27;
                    var_52 = *var_26 == *var_27;
                    var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                    var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                  } while (var_52);
                  var_51 = false;
                  var_28 = (!var_28 && !var_52) == var_28;
                  if (!var_28) {
                    var_25 = 0xd;
                    var_26 = var_45;
                    var_27 = (type_5 *)".debug_names";
                    do {
                      if (var_25 == 0) break;
                      var_25 = var_25 + -1;
                      var_51 = *var_26 < *var_27;
                      var_28 = *var_26 == *var_27;
                      var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                      var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                    } while (var_28);
                    if ((!var_51 && !var_28) != var_51) goto LAB_0012b31e;
                  }
                }
              }
              else {
                var_25 = 0x11;
                var_26 = var_45;
                var_27 = (type_5 *)".gnu.linkonce.wi.";
                do {
                  if (var_25 == 0) break;
                  var_25 = var_25 + -1;
                  var_28 = *var_26 < *var_27;
                  var_52 = *var_26 == *var_27;
                  var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                  var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                } while (var_52);
                if ((!var_28 && !var_52) != var_28) goto LAB_0012b2b0;
              }
            }
LAB_0012b3c0:
            var_57(filedata,var_1,'\x04');
          }
        }
        else if (var_18 == 0x12) {
          peVar13 = (type_8 *)var_58(0x10);
          peVar13->hdr = var_15;
          peVar13->next = symtab_shndx_list;
          symtab_shndx_list = peVar13;
        }
        else if (var_18 == 2) {
          var_59 = (type_7)(-(type_11)(var_8 == 0) & 8) + 0x10;
          if (var_15->sh_entsize != var_59) goto LAB_0012b6ee;
        }
        else if (var_18 == 0x11) {
          if (var_15->sh_entsize != 4) {
            var_21(buf,"%016lx");
            var_13 = (char *)var_2(0,"Section %d has invalid sh_entsize of %s\n",5);
            var_22(var_13,(type_7)var_1,buf);
            var_13 = (char *)var_2(0,
                                        "(Using the expected size of %u for the rest of this dump)\n"
                                        ,5);
            var_22(var_13,4);
            var_15->sh_entsize = 4;
          }
        }
        else if (var_18 == 9) {
          var_59 = (type_7)(-(type_11)(var_8 == 0) & 8) + 8;
          if (var_15->sh_entsize != var_59) {
LAB_0012b6ee:
            var_21(buf,"%016lx");
            var_13 = (char *)var_2(0,"Section %d has invalid sh_entsize of %s\n",5);
            var_22(var_13,(type_7)var_1,buf);
            var_13 = (char *)var_2(0,
                                        "(Using the expected size of %u for the rest of this dump)\n"
                                        ,5);
            var_22(var_13,var_59);
            var_15->sh_entsize = var_59;
          }
        }
        else {
          if (var_18 != 4) goto LAB_0012b1ff;
          var_59 = (type_7)(-(type_11)(var_8 == 0) & 0xc) + 0xc;
          if (var_15->sh_entsize != var_59) goto LAB_0012b6ee;
        }
      }
LAB_0012ad90:
      var_18 = (filedata->file_header).e_shnum;
      var_1 = var_1 + 1;
      var_15 = var_15 + 1;
    } while (var_1 < var_18);
    if (var_4 == 0) {
      return 1;
    }
    if (var_18 < 2) goto LAB_0012c296;
    var_13 = "\nSection Headers:\n";
  }
  var_13 = (char *)var_2(0,var_13,5);
  var_5(var_13);
  if (var_8 == 0) {
    if (var_60 == 0) {
      if (var_61 == 0) {
        var_13 = (char *)var_2(0,
                                    "  [Nr] Name              Type             Address           Offset\n"
                                    ,5);
        var_5(var_13);
        var_13 = "       Size              EntSize          Flags  Link  Info  Align\n";
      }
      else {
        var_13 = (char *)var_2(0,"  [Nr] Name\n",5);
        var_5(var_13);
        var_13 = (char *)var_2(0,
                                    "       Type              Address          Offset            Link\n"
                                    ,5);
        var_5(var_13);
        var_13 = "       Size              EntSize          Info              Align\n";
      }
    }
    else {
      var_13 = 
      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";
      if (var_61 != 0) {
        var_13 = (char *)var_2(0,"  [Nr] Name\n",5);
        var_5(var_13);
        var_13 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";
      }
    }
  }
  else {
    var_13 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";
    if (var_61 != 0) {
      var_13 = (char *)var_2(0,"  [Nr] Name\n",5);
      var_5(var_13);
      var_13 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";
    }
  }
  var_13 = (char *)var_2(0,var_13,5);
  var_5(var_13);
  if (var_61 == 0) {
    var_1 = (filedata->file_header).e_shnum;
    pFVar15 = (type_2 *)filedata->section_headers;
    if (var_1 != 0) {
LAB_0012ae50:
      uVar21 = 0;
LAB_0012b043:
      do {
        var_18 = *(type_11 *)((long)&pFVar15->file_name + 4);
        if (var_18 < 0x11) {
          if (var_18 < 0xe) {
            if (var_18 < 6) {
              if (var_18 < 4) {
                if (var_18 == 2) goto LAB_0012b074;
              }
              else {
LAB_0012bb47:
                var_62 = (type_11)(pFVar15->file_header).e_entry;
                if (((var_62 == 0) || (var_1 <= var_62)) ||
                   ((var_1 = filedata->section_headers[var_62].sh_type, var_1 != 2 &&
                    (var_1 != 0xb)))) {
                  var_13 = "[%2u]: Link field (%u) should index a symtab section.\n";
                  goto LAB_0012b0a7;
                }
              }
            }
            else {
              if (var_18 == 9) goto LAB_0012bb47;
              if ((var_18 == 0xb) || (var_18 == 6)) goto LAB_0012b074;
            }
            goto joined_r0x0012ae86;
          }
          var_62 = (type_11)(pFVar15->file_header).e_entry;
          if (var_62 != 0) {
            var_13 = "[%2u]: Unexpected value (%u) in link field.\n";
            goto LAB_0012b0a7;
          }
LAB_0012b0ca:
          var_63 = 1L << ((type_5)var_18 & 0x3f);
          if ((var_63 & 0x20804) != 0) goto LAB_0012aec8;
          if ((var_63 & 0x5c060) == 0) {
            if ((var_63 & 0x210) == 0) {
              if (var_18 == 8) goto LAB_0012aef0;
              pFVar17 = pFVar15->handle;
              if (((type_7)pFVar17 & 0x40) == 0) goto LAB_0012bf7c;
              goto LAB_0012ae98;
            }
            var_1 = *(type_11 *)((long)&(pFVar15->file_header).e_entry + 4);
            if (var_1 == 0) {
              if ((type_6)((filedata->file_header).e_type - 2) < 2) goto LAB_0012aec8;
              var_13 = filedata->string_table;
              if (var_13 == (char *)0x0) {
                uVar29 = 0;
                uVar31 = 1;
                var_45 = (type_5 *)var_2(0,"<no-strings>",5);
LAB_0012c57f:
                var_25 = 9;
                var_26 = (type_5 *)".rel.dyn";
                do {
                  if (var_25 == 0) break;
                  var_25 = var_25 + -1;
                  uVar29 = *var_45 < *var_26;
                  uVar31 = *var_45 == *var_26;
                  var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                  var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                } while ((bool)uVar31);
                if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;
                var_13 = filedata->string_table;
                if (var_13 == (char *)0x0) {
                  uVar29 = 0;
                  uVar31 = 1;
                  var_45 = (type_5 *)var_2(0,"<no-strings>",5);
                }
                else {
                  var_63 = (type_7)*(type_11 *)&pFVar15->file_name;
                  if (var_63 < filedata->string_table_length) {
                    uVar29 = var_64((type_7)var_13,var_63);
                    var_45 = (type_5 *)(var_13 + var_63);
                    uVar31 = var_45 == (type_5 *)0x0;
                  }
                  else {
                    uVar29 = 0;
                    uVar31 = 1;
                    var_45 = (type_5 *)var_2(0,"<corrupt>",5);
                  }
                }
              }
              else {
                var_63 = (type_7)*(type_11 *)&pFVar15->file_name;
                if (filedata->string_table_length <= var_63) {
                  uVar29 = 0;
                  uVar31 = 1;
                  var_45 = (type_5 *)var_2(0,"<corrupt>",5);
                  goto LAB_0012c57f;
                }
                var_28 = var_64((type_7)var_13,var_63);
                var_45 = (type_5 *)(var_13 + var_63);
                var_52 = var_45 == (type_5 *)0x0;
                var_25 = 9;
                var_26 = var_45;
                var_27 = (type_5 *)".rel.dyn";
                do {
                  if (var_25 == 0) break;
                  var_25 = var_25 + -1;
                  var_28 = *var_26 < *var_27;
                  var_52 = *var_26 == *var_27;
                  var_26 = var_26 + (type_7)bVar32 * -2 + 1;
                  var_27 = var_27 + (type_7)bVar32 * -2 + 1;
                } while (var_52);
                uVar29 = 0;
                uVar31 = (!var_28 && !var_52) == var_28;
                if ((bool)uVar31) goto LAB_0012aec8;
              }
              var_25 = 10;
              var_26 = (type_5 *)".rela.dyn";
              do {
                if (var_25 == 0) break;
                var_25 = var_25 + -1;
                uVar29 = *var_45 < *var_26;
                uVar31 = *var_45 == *var_26;
                var_45 = var_45 + (type_7)bVar32 * -2 + 1;
                var_26 = var_26 + (type_7)bVar32 * -2 + 1;
              } while ((bool)uVar31);
              if ((!(bool)uVar29 && !(bool)uVar31) == (bool)uVar29) goto LAB_0012aec8;
              var_1 = *(type_11 *)((long)&(pFVar15->file_header).e_entry + 4);
            }
            else if (var_1 < (filedata->file_header).e_shnum) {
              var_18 = filedata->section_headers[var_1].sh_type;
              var_65 = 1;
              if (var_18 < 0xf) {
                var_65 = ~(type_5)(0x4182L >> ((type_5)var_18 & 0x3f)) & 1;
              }
              if ((0x5fffffff < var_18) || (var_65 == 0)) goto LAB_0012aec8;
            }
            var_13 = "[%2u]: Info field (%u) should index a relocatable section.\n";
          }
          else {
LAB_0012bf87:
            var_1 = *(type_11 *)((long)&(pFVar15->file_header).e_entry + 4);
            if (var_1 == 0) goto LAB_0012aec8;
            var_13 = "[%2u]: Unexpected value (%u) in info field.\n";
          }
          var_13 = (char *)var_2(0,var_13,5);
          var_3(var_13,uVar21,(type_7)var_1);
          goto LAB_0012aec8;
        }
        if (var_18 == 0x6ffffff7) {
LAB_0012b074:
          var_62 = (type_11)(pFVar15->file_header).e_entry;
          if (((var_62 == 0) || (var_1 <= var_62)) ||
             (filedata->section_headers[var_62].sh_type != 3)) {
            var_13 = "[%2u]: Link field (%u) should index a string section.\n";
LAB_0012b0a7:
            var_13 = (char *)var_2(0,var_13,5);
            var_3(var_13,uVar21,(type_7)var_62);
            var_18 = *(type_11 *)((long)&pFVar15->file_name + 4);
          }
        }
        else if (var_18 < 0x6ffffff8) {
          if ((var_18 < 0x13) || (var_18 == 0x6ffffff6)) goto LAB_0012bb47;
        }
        else if (0x6ffffffc < var_18) {
          if (var_18 < 0x6fffffff) goto LAB_0012b074;
          if (var_18 == 0x6fffffff) goto LAB_0012bb47;
        }
joined_r0x0012ae86:
        if (var_18 < 0x13) goto LAB_0012b0ca;
        pFVar17 = pFVar15->handle;
        if (((type_7)pFVar17 & 0x40) == 0) {
          if (var_18 < 0x60000000) {
LAB_0012bf7c:
            if (((type_7)pFVar17 & 0x1000000) == 0) goto LAB_0012bf87;
            goto LAB_0012aec8;
          }
        }
        else {
LAB_0012ae98:
          var_1 = *(type_11 *)((long)&(pFVar15->file_header).e_entry + 4);
          if ((var_1 == 0) || ((filedata->file_header).e_shnum <= var_1)) {
            var_13 = (char *)var_2(0,"[%2u]: Expected link to another section in info field",5)
            ;
            var_3(var_13,uVar21);
          }
LAB_0012aec8:
          if (((filedata->file_size < *(type_7 *)((pFVar15->file_header).e_ident + 8)) &&
              (var_11 = *(int *)((long)&pFVar15->file_name + 4), var_11 - 1U < 0x5fffffff)) &&
             (var_11 != 8)) {
            var_13 = (char *)var_2(0,"Size of section %u is larger than the entire file!\n",5);
            var_3(var_13,uVar21);
          }
        }
LAB_0012aef0:
        var_5("  [%2u] ",uVar21);
        if (var_61 == 0) {
          if (filedata->string_table == (char *)0x0) {
            var_13 = (char *)var_2(0,"<no-strings>",5);
          }
          else {
            var_13 = filedata->string_table + *(type_11 *)&pFVar15->file_name;
            if (filedata->string_table_length <= (type_7)*(type_11 *)&pFVar15->file_name) {
              var_13 = (char *)var_2(0,"<corrupt>",5);
            }
          }
          var_66(L'\xffffffef',var_13);
        }
        else {
          var_13 = var_67
                              ((type_2 *)&filedata->string_table,
                               (type_9 *)&filedata->string_table_length,pFVar15);
          var_5("%s\n      ",var_13);
        }
        var_13 = var_68(filedata,*(type_11 *)((long)&pFVar15->file_name + 4));
        __format = " %-15.15s ";
        if (var_60 != 0) {
          __format = " %-15s ";
        }
        var_5(__format,var_13);
        if (var_8 == 0) {
          if (var_60 == 0) {
            if (var_61 == 0) {
              var_69(0x20,stdout);
              var_70(pFVar15->file_size,LONG_HEX);
              var_5("  %8.8lx",*(type_17 *)(pFVar15->file_header).e_ident);
              var_5("\n       ");
              var_70(*(type_3 *)((pFVar15->file_header).e_ident + 8),LONG_HEX);
              var_5("  ");
              var_70((pFVar15->file_header).e_shoff,LONG_HEX);
              var_13 = var_71
                                  ((type_2 *)((filedata->file_header).e_ident + 7),
                                   (type_3)&(filedata->file_header).e_machine,
                                   (type_2 *)pFVar15->handle);
              var_5(" %3s ",var_13);
              var_5("     %2u   %3u     %lu\n",(type_7)(type_11)(pFVar15->file_header).e_entry,
                     (type_7)*(type_11 *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
            else {
              var_13 = var_68(filedata,*(type_11 *)((long)&pFVar15->file_name + 4));
              var_5("       %-15.15s  ",var_13);
              var_70(pFVar15->file_size,LONG_HEX);
              var_5("  %16.16lx",*(type_17 *)(pFVar15->file_header).e_ident);
              var_5("  %u\n       ",(type_7)(type_11)(pFVar15->file_header).e_entry);
              var_70(*(type_3 *)((pFVar15->file_header).e_ident + 8),LONG_HEX);
              var_69(0x20,stdout);
              var_70((pFVar15->file_header).e_shoff,LONG_HEX);
              var_5("  %-16u  %lu\n",(type_7)*(type_11 *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
          }
          else {
            var_70(pFVar15->file_size,LONG_HEX);
            var_5(" %6.6lx",*(type_17 *)(pFVar15->file_header).e_ident);
            var_5(" %6.6lx",*(type_17 *)((pFVar15->file_header).e_ident + 8));
            var_5(" %2.2lx",(pFVar15->file_header).e_shoff);
            if (var_61 == 0) {
              var_13 = var_71
                                  ((type_2 *)((filedata->file_header).e_ident + 7),
                                   (type_3)&(filedata->file_header).e_machine,
                                   (type_2 *)pFVar15->handle);
              var_5(" %3s ",var_13);
            }
            else {
              var_72(&DAT_0016a396,1,2,stdout);
            }
            var_5("%2u %3u ",(type_7)(type_11)(pFVar15->file_header).e_entry,
                   (type_7)*(type_11 *)((long)&(pFVar15->file_header).e_entry + 4));
            var_5("%2lu\n",(pFVar15->file_header).e_phoff);
          }
        }
        else {
          var_70(pFVar15->file_size,LONG_HEX);
          var_5(" %6.6lx %6.6lx %2.2lx",*(type_17 *)(pFVar15->file_header).e_ident,
                 *(type_17 *)((pFVar15->file_header).e_ident + 8),(pFVar15->file_header).e_shoff)
          ;
          if (var_61 == 0) {
            var_13 = var_71
                                ((type_2 *)((filedata->file_header).e_ident + 7),
                                 (type_3)&(filedata->file_header).e_machine,
                                 (type_2 *)pFVar15->handle);
            var_5(" %3s ",var_13);
          }
          else {
            var_72(&DAT_0016a396,1,2,stdout);
          }
          var_1 = (type_11)(pFVar15->file_header).e_entry;
          if (var_1 < (filedata->file_header).e_shnum) {
            if (var_61 == 0) {
              var_5("%2u %3u %2lu\n",(type_7)var_1,
                     (type_7)*(type_11 *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
            else {
              var_5("%2u ");
              var_5("%3u %2lu\n",(type_7)*(type_11 *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
          }
          else {
            var_14 = (filedata->file_header).e_machine;
            if (var_14 == 0x12) {
LAB_0012c0c0:
              if (var_1 == 0xff00) {
                var_13 = "BEFORE";
              }
              else {
                if (var_1 != 0xff01) goto LAB_0012c012;
                var_13 = "AFTER";
              }
              if (var_61 == 0) goto LAB_0012c248;
              var_5("<%s> ",var_13);
              var_5("%3u %2lu\n",(type_7)*(type_11 *)((long)&(pFVar15->file_header).e_entry + 4),
                     (pFVar15->file_header).e_phoff);
            }
            else {
              if (0x12 < var_14) {
                if (var_14 != 0x3e) {
                  if (0x3e < var_14) {
                    var_14 = var_14 - 0xb4;
                    goto joined_r0x0012c138;
                  }
                  if (var_14 != 0x2b) goto LAB_0012c012;
                }
                goto LAB_0012c0c0;
              }
              if (var_14 == 6) goto LAB_0012c0c0;
              if (var_14 < 7) {
                var_14 = var_14 - 2;
joined_r0x0012c138:
                if (var_14 < 2) goto LAB_0012c0c0;
              }
              else if (var_14 == 0xb) goto LAB_0012c0c0;
LAB_0012c012:
              var_13 = "";
              if (var_61 == 0) {
LAB_0012c248:
                var_5("%2u %3u %2lu\n",(type_7)var_1,
                       (type_7)*(type_11 *)((long)&(pFVar15->file_header).e_entry + 4),
                       (pFVar15->file_header).e_phoff);
              }
              else {
                var_13 = "";
                var_5("%2u ");
                var_5("%3u %2lu\n",(type_7)*(type_11 *)((long)&(pFVar15->file_header).e_entry + 4),
                       (pFVar15->file_header).e_phoff);
              }
            }
            if (*var_13 == '\0') {
              bVar1 = (pFVar15->file_header).e_entry;
              var_13 = (char *)var_2(0,
                                          "section %u: sh_link value of %u is larger than the number of sections\n"
                                          ,5);
              var_3(var_13,uVar21,(type_7)(type_11)bVar1);
            }
          }
        }
        if (var_61 == 0) {
LAB_0012b030:
          var_1 = (filedata->file_header).e_shnum;
          var_18 = (int)uVar21 + 1;
          uVar21 = (type_7)var_18;
          pFVar15 = (type_2 *)&(pFVar15->file_header).e_type;
          if (var_1 <= var_18) break;
          goto LAB_0012b043;
        }
        var_13 = var_71
                            ((type_2 *)((filedata->file_header).e_ident + 7),
                             (type_3)&(filedata->file_header).e_machine,(type_2 *)pFVar15->handle
                            );
        var_5("       %s\n",var_13);
        if (((type_7)pFVar15->handle & 0x800) == 0) goto LAB_0012b030;
        filedata_1 = (type_2 *)var_2(0,"compression header",5);
        var_73 = var_12(buf_3,(type_2 *)&filedata->handle,(type_7)&filedata->file_size,
                           *(type_12 *)(pFVar15->file_header).e_ident,1,(char *)0x18,
                           filedata_1);
        if (var_73 == (void *)0x0) goto LAB_0012b030;
        var_74((type_18 *)buf,buf_3,0x18);
        uVar6 = buf._0_4_;
        if (buf._0_4_ == 1) {
          var_5("       ZLIB, ");
        }
        else {
          var_13 = (char *)var_2(0,"       [<unknown>: 0x%x], ",5);
          var_5(var_13,(type_7)(type_11)uVar6);
        }
        var_18 = (int)uVar21 + 1;
        uVar21 = (type_7)var_18;
        pFVar15 = (type_2 *)&(pFVar15->file_header).e_type;
        var_70(buf._8_8_,LONG_HEX);
        var_5(", %lu\n",buf._16_8_);
        var_1 = (filedata->file_header).e_shnum;
      } while (var_18 < var_1);
      goto LAB_0012bca8;
    }
  }
  else {
    var_13 = (char *)var_2(0,"       Flags\n",5);
    var_5(var_13);
    var_1 = (filedata->file_header).e_shnum;
    pFVar15 = (type_2 *)filedata->section_headers;
    if (var_1 != 0) goto LAB_0012ae50;
LAB_0012bca8:
    if (var_61 != 0) {
      return 1;
    }
  }
  var_13 = (char *)var_2(0,
                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "
                              ,5);
  var_5(var_13);
  var_14 = (filedata->file_header).e_machine;
  if (((type_6)(var_14 - 0xb4) < 2) || (var_14 == 0x3e)) {
    var_13 = "l (large), ";
  }
  else {
    var_13 = "y (purecode), ";
    if (var_14 != 0x28) {
      if (var_14 != 0x14) goto LAB_0012bd12;
      var_13 = "v (VLE), ";
    }
  }
  var_13 = (char *)var_2(0,var_13,5);
  var_5(var_13);
LAB_0012bd12:
  var_75("p (processor specific)");
  return 1;
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (sized_type_specifier) declarator: (identifier)))) body: (compound_statement (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (sized_type_specifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (return_statement (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (return_statement (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (string_literal (string_content) (escape_sequence)) (identifier) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (string_literal (string_content)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier)))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (string_literal (escape_sequence) (string_content) (escape_sequence)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (pointer_expression argument: (identifier)))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (pointer_expression argument: (identifier)))))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)) (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)) (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal)))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)) (number_literal)))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)) (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal))))))))))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)) (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal))))))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)) (number_literal)))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)) (number_literal)))) right: (binary_expression left: (identifier) right: (number_literal))))))))))))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (goto_statement label: (statement_identifier)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (false)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content))))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal))))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (unary_expression argument: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (unary_expression argument: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (unary_expression argument: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))))))))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (escape_sequence) (string_content) (escape_sequence)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal)))))) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (goto_statement label: (statement_identifier)))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (unary_expression argument: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (number_literal) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)) right: (number_literal))))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence) (string_content)) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (escape_sequence) (string_content))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence) (string_content)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (number_literal) (identifier))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (number_literal) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (string_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement)) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) right: (number_literal))))) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal) (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (sized_type_specifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)))))) (return_statement (number_literal)))))

undefined8 MASKED(long param_1)

{
  short sVar1;
  int iVar2;
  int iVar3;
  int iVar4;
  byte bVar5;
  ushort uVar6;
  int iVar7;
  int iVar8;
  byte *pbVar9;
  ulong uVar10;
  undefined8 *puVar11;
  undefined8 uVar12;
  undefined8 uVar13;
  char *pcVar14;
  ulong uVar15;
  uint uVar16;
  ulong uVar17;
  byte *pbVar18;
  undefined4 uVar19;
  long lVar20;
  byte *pbVar21;
  uint uVar22;
  uint uVar23;
  uint *puVar24;
  bool bVar25;
  bool bVar26;
  undefined1 uVar27;
  bool bVar28;
  undefined1 uVar29;
  byte bVar30;
  undefined1 local_88 [32];
  uint local_68 [2];
  undefined8 local_60;
  undefined8 local_58;
  
  bVar30 = 0;
  uVar22 = *(uint *)(param_1 + 100);
  *(undefined8 *)(param_1 + 0x70) = 0;
  if (uVar22 == 0) {
    if (*(long *)(param_1 + 0x38) != 0) {
      uVar12 = dcgettext(0,
                         "possibly corrupt ELF file header - it has a non-zero section header offset, but no section headers\n"
                         ,5);
      warn(uVar12);
      return 0;
    }
    if (DAT_00193494 == 0) {
      return 1;
    }
    pcVar14 = (char *)dcgettext(0,"\nThere are no sections in this file.\n",5);
    printf(pcVar14);
    return 1;
  }
  if ((DAT_00193494 != 0) && (DAT_0019347c == 0)) {
    uVar12 = *(undefined8 *)(param_1 + 0x38);
    pcVar14 = (char *)dcngettext(0,"There is %d section header, starting at offset 0x%lx:\n",
                                 "There are %d section headers, starting at offset 0x%lx:\n",uVar22,
                                 5);
    printf(pcVar14,(ulong)uVar22,uVar12);
  }
  if (DAT_0019345c == 0) {
    iVar7 = FUN_00115940(param_1,0);
  }
  else {
    iVar7 = FUN_00115650();
  }
  if (iVar7 == 0) {
    return 0;
  }
  uVar22 = *(uint *)(param_1 + 0x68);
  puVar24 = *(uint **)(param_1 + 0x70);
  if (((uVar22 != 0) && (uVar22 < *(uint *)(param_1 + 100))) &&
     (*(long *)(puVar24 + (ulong)uVar22 * 0x14 + 8) != 0)) {
    uVar12 = dcgettext(0,"string table",5);
    lVar20 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,
                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 6),1,
                          *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8),uVar12);
    uVar12 = 0;
    *(long *)(param_1 + 0x80) = lVar20;
    if (lVar20 != 0) {
      uVar12 = *(undefined8 *)(puVar24 + (ulong)uVar22 * 0x14 + 8);
    }
    *(undefined8 *)(param_1 + 0x88) = uVar12;
    puVar24 = *(uint **)(param_1 + 0x70);
  }
  DAT_00194678 = 0;
  DAT_00194690 = 0;
  DAT_00194670 = 0;
  DAT_001934b0 = (undefined8 *)0x0;
  DAT_00196f54 = (-(uint)(DAT_0019345c == 0) & 4) + 4;
  uVar6 = *(ushort *)(param_1 + 0x52);
  if (uVar6 < 0x30) {
    if (uVar6 < 0x2e) {
      if (((uVar6 == 8) || (uVar6 == 10)) &&
         (((uint)*(undefined8 *)(param_1 + 0x48) & 0xf000) == 0x4000)) {
        if (puVar24 != (uint *)0x0) {
          lVar20 = FUN_001193c0(param_1,".gcc_compiled_long32");
          puVar24 = *(uint **)(param_1 + 0x70);
          if (lVar20 != 0) goto LAB_0012ad0a;
        }
        DAT_00196f54 = 8;
      }
    }
    else {
      uVar22 = (uint)*(undefined8 *)(param_1 + 0x48) & 0xff0000;
      if (uVar22 != 0x830000) {
        if (uVar22 < 0x830001) {
          if ((uVar22 == 0x810000) || (uVar22 == 0x820000)) {
LAB_0012c4d0:
            DAT_00196f54 = 4;
            goto LAB_0012ad0a;
          }
          if (uVar22 != 0x800000) goto LAB_0012ad0a;
        }
        else {
          if (uVar22 == 0x850000) goto LAB_0012c4d0;
          if ((uVar22 != 0x860000) && (uVar22 != 0x840000)) goto LAB_0012ad0a;
        }
      }
LAB_0012b791:
      DAT_00196f54 = 2;
    }
  }
  else if (((uVar6 == 0x78) || (uVar6 == 0xfeb0)) &&
          (((uint)*(undefined8 *)(param_1 + 0x48) & 0x7f) == 0x75)) goto LAB_0012b791;
LAB_0012ad0a:
  if (*(int *)(param_1 + 100) == 0) {
    if (DAT_00193494 == 0) {
      return 1;
    }
LAB_0012c296:
    pcVar14 = "\nSection Header:\n";
  }
  else {
    uVar22 = 0;
    do {
      if (puVar24 == (uint *)0x0) {
        pbVar9 = (byte *)dcgettext(0,"<none>",5);
      }
      else if (*(long *)(param_1 + 0x80) == 0) {
        pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);
      }
      else {
        pbVar9 = (byte *)(*(long *)(param_1 + 0x80) + (ulong)*puVar24);
        if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {
          pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);
        }
      }
      iVar4 = DAT_00196f7c;
      iVar3 = DAT_00196f48;
      iVar2 = DAT_00196f3c;
      iVar7 = DAT_00196f28;
      uVar16 = puVar24[1];
      if (uVar16 == 0xb) {
        pcVar14 = "File contains multiple dynamic symbol tables\n";
        if (DAT_00194678 == 0) {
          if (DAT_0019345c == 0) {
            if (*(long *)(puVar24 + 0xe) != 0x18) {
              uVar19 = 0x18;
              uVar12 = 0x18;
              goto LAB_0012b923;
            }
LAB_0012b7d2:
            DAT_00194678 = FUN_00114ea0(param_1,puVar24,&DAT_00194680);
          }
          else {
            if (*(long *)(puVar24 + 0xe) != 0x10) {
              uVar19 = 0x10;
              uVar12 = 0x10;
LAB_0012b923:
              sprintf((char *)local_68,"%016lx");
              uVar13 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
              error(uVar13,uVar22,local_68);
              uVar13 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);
              error(uVar13,uVar19);
              iVar7 = DAT_0019345c;
              *(undefined8 *)(puVar24 + 0xe) = uVar12;
              if (iVar7 == 0) goto LAB_0012b7d2;
            }
            DAT_00194678 = FUN_001149b0(param_1,puVar24,&DAT_00194680);
          }
        }
        else {
LAB_0012b69a:
          dcgettext(0,pcVar14,5);
          error();
        }
      }
      else {
        bVar25 = uVar16 < 3;
        bVar28 = uVar16 == 3;
        if (bVar28) {
          lVar20 = 8;
          pbVar18 = pbVar9;
          pbVar21 = (byte *)".dynstr";
          do {
            if (lVar20 == 0) break;
            lVar20 = lVar20 + -1;
            bVar25 = *pbVar18 < *pbVar21;
            bVar28 = *pbVar18 == *pbVar21;
            pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
          } while (bVar28);
          if ((!bVar25 && !bVar28) == bVar25) {
            if (DAT_00194690 != 0) {
              pcVar14 = "File contains multiple dynamic string tables\n";
              goto LAB_0012b69a;
            }
            uVar12 = dcgettext(0,"dynamic strings",5);
            DAT_00194690 = FUN_001144a0(0,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,
                                        *(undefined8 *)(puVar24 + 8),uVar12);
            DAT_00194688 = 0;
            if (DAT_00194690 != 0) {
              DAT_00194688 = *(undefined8 *)(puVar24 + 8);
            }
          }
          else {
LAB_0012b1ff:
            bVar25 = false;
            bVar28 = ((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&
                              DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&
                           DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&
                        DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&
                     DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0);
            if (((((((((((((DAT_00196f40 == 0 && DAT_00196f5c == 0) && DAT_00196f38 == 0) &&
                         DAT_00196f68 == 0) && DAT_00196f30 == 0) && DAT_00196f34 == 0) &&
                      DAT_00196f6c == 0) && DAT_00196f28 == 0) && DAT_00196f3c == 0) &&
                   DAT_00196f60 == 0) && DAT_00196f48 == 0) && DAT_00196f7c == 0) &&
                DAT_00196f74 == 0) && (DAT_00196f2c == 0 && DAT_0019346c == 0)) goto LAB_0012b2b0;
            lVar20 = 7;
            pbVar18 = pbVar9;
            pbVar21 = (byte *)".debug_";
            do {
              if (lVar20 == 0) break;
              lVar20 = lVar20 + -1;
              bVar25 = *pbVar18 < *pbVar21;
              bVar28 = *pbVar18 == *pbVar21;
              pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
            } while (bVar28);
            bVar26 = false;
            bVar25 = (!bVar25 && !bVar28) == bVar25;
            if (bVar25) {
LAB_0012b3f7:
              pbVar18 = pbVar9 + 7;
              if (pbVar9[1] == 0x7a) {
                pbVar18 = pbVar9 + 8;
              }
              if (DAT_0019346c == 0) {
                bVar28 = false;
                bVar25 = DAT_00196f2c == 0;
                if (bVar25) {
LAB_0012b446:
                  bVar25 = false;
                  bVar28 = DAT_00196f40 == 0;
                  if (!bVar28) {
                    lVar20 = 6;
                    pbVar9 = pbVar18;
                    pbVar21 = (byte *)0x1826c0;
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar25 = *pbVar9 < *pbVar21;
                      bVar28 = *pbVar9 == *pbVar21;
                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar28);
                    if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                  }
                  bVar25 = false;
                  bVar28 = DAT_00196f5c == 0;
                  if (bVar28) {
LAB_0012b490:
                    bVar25 = false;
                    bVar28 = DAT_00196f38 == 0;
                    if (bVar28) {
                      bVar25 = false;
                      bVar28 = DAT_00196f68 == 0;
                      if (bVar28) {
LAB_0012b4dd:
                        bVar25 = false;
                        bVar28 = DAT_00196f30 == 0;
                        if (!bVar28) {
                          lVar20 = 7;
                          pbVar9 = pbVar18;
                          pbVar21 = (byte *)0x1826ce;
                          do {
                            if (lVar20 == 0) break;
                            lVar20 = lVar20 + -1;
                            bVar25 = *pbVar9 < *pbVar21;
                            bVar28 = *pbVar9 == *pbVar21;
                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                          } while (bVar28);
                          if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                        }
                        bVar25 = false;
                        bVar28 = DAT_00196f60 == 0;
                        if (bVar28) {
LAB_0012b547:
                          bVar25 = false;
                          bVar28 = DAT_00196f34 == 0;
                          if (!bVar28) {
                            lVar20 = 5;
                            pbVar9 = pbVar18;
                            pbVar21 = (byte *)0x18246b;
                            do {
                              if (lVar20 == 0) break;
                              lVar20 = lVar20 + -1;
                              bVar25 = *pbVar9 < *pbVar21;
                              bVar28 = *pbVar9 == *pbVar21;
                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                            } while (bVar28);
                            if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                          }
                          bVar25 = false;
                          bVar28 = DAT_00196f6c == 0;
                          if (!bVar28) {
                            lVar20 = 7;
                            pbVar9 = pbVar18;
                            pbVar21 = (byte *)0x1824f6;
                            do {
                              if (lVar20 == 0) break;
                              lVar20 = lVar20 + -1;
                              bVar25 = *pbVar9 < *pbVar21;
                              bVar28 = *pbVar9 == *pbVar21;
                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                            } while (bVar28);
                            if (((!bVar25 && !bVar28) == bVar25) ||
                               (iVar8 = strncmp((char *)pbVar18,"macro",5), iVar8 == 0))
                            goto LAB_0012b3c0;
                          }
                          if (((((iVar7 == 0) ||
                                (iVar7 = strncmp((char *)pbVar18,"str",3), iVar7 != 0)) &&
                               ((iVar2 == 0 ||
                                ((iVar7 = strncmp((char *)pbVar18,"loc",3), iVar7 != 0 &&
                                 (iVar7 = strncmp((char *)pbVar18,"loclists",8), iVar7 != 0)))))) &&
                              ((iVar3 == 0 ||
                               (iVar7 = strncmp((char *)pbVar18,"addr",4), iVar7 != 0)))) &&
                             ((iVar4 == 0 ||
                              ((iVar7 = strncmp((char *)pbVar18,"cu_index",8), iVar7 != 0 &&
                               (iVar7 = strncmp((char *)pbVar18,"tu_index",8), iVar7 != 0))))))
                          goto LAB_0012ad90;
                        }
                        else {
                          lVar20 = 6;
                          pbVar9 = pbVar18;
                          pbVar21 = (byte *)0x185a13;
                          do {
                            if (lVar20 == 0) break;
                            lVar20 = lVar20 + -1;
                            bVar25 = *pbVar9 < *pbVar21;
                            bVar28 = *pbVar9 == *pbVar21;
                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                          } while (bVar28);
                          bVar26 = false;
                          bVar25 = (!bVar25 && !bVar28) == bVar25;
                          if (!bVar25) {
                            lVar20 = 8;
                            pbVar9 = pbVar18;
                            pbVar21 = (byte *)0x182607;
                            do {
                              if (lVar20 == 0) break;
                              lVar20 = lVar20 + -1;
                              bVar26 = *pbVar9 < *pbVar21;
                              bVar25 = *pbVar9 == *pbVar21;
                              pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                              pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                            } while (bVar25);
                            if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b547;
                          }
                        }
                      }
                      else {
                        lVar20 = 8;
                        pbVar9 = pbVar18;
                        pbVar21 = (byte *)0x1862bf;
                        do {
                          if (lVar20 == 0) break;
                          lVar20 = lVar20 + -1;
                          bVar25 = *pbVar9 < *pbVar21;
                          bVar28 = *pbVar9 == *pbVar21;
                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                        } while (bVar28);
                        bVar25 = (!bVar25 && !bVar28) == bVar25;
joined_r0x0012c500:
                        if (!bVar25) {
                          pcVar14 = ".debug_gnu_pubtypes";
LAB_0012b4cb:
                          bVar28 = false;
                          lVar20 = 0xc;
                          pbVar9 = pbVar18;
                          pbVar21 = (byte *)(pcVar14 + 7);
                          do {
                            if (lVar20 == 0) break;
                            lVar20 = lVar20 + -1;
                            bVar28 = *pbVar9 < *pbVar21;
                            bVar25 = *pbVar9 == *pbVar21;
                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                          } while (bVar25);
                          if ((!bVar28 && !bVar25) != bVar28) goto LAB_0012b4dd;
                        }
                      }
                    }
                    else {
                      lVar20 = 8;
                      pbVar9 = pbVar18;
                      pbVar21 = (byte *)0x1862ac;
                      do {
                        if (lVar20 == 0) break;
                        lVar20 = lVar20 + -1;
                        bVar25 = *pbVar9 < *pbVar21;
                        bVar28 = *pbVar9 == *pbVar21;
                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                      } while (bVar28);
                      if ((!bVar25 && !bVar28) != bVar25) {
                        pcVar14 = ".debug_gnu_pubnames";
                        bVar28 = false;
                        bVar25 = DAT_00196f68 == 0;
                        if (bVar25) goto LAB_0012b4cb;
                        lVar20 = 8;
                        pbVar9 = pbVar18;
                        pbVar21 = (byte *)0x1862bf;
                        do {
                          if (lVar20 == 0) break;
                          lVar20 = lVar20 + -1;
                          bVar28 = *pbVar9 < *pbVar21;
                          bVar25 = *pbVar9 == *pbVar21;
                          pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                        } while (bVar25);
                        bVar26 = false;
                        bVar25 = (!bVar28 && !bVar25) == bVar28;
                        if (!bVar25) {
                          lVar20 = 0xc;
                          pbVar9 = pbVar18;
                          pbVar21 = (byte *)0x1824cd;
                          do {
                            if (lVar20 == 0) break;
                            lVar20 = lVar20 + -1;
                            bVar26 = *pbVar9 < *pbVar21;
                            bVar25 = *pbVar9 == *pbVar21;
                            pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                            pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                          } while (bVar25);
                          bVar25 = (!bVar26 && !bVar25) == bVar26;
                          goto joined_r0x0012c500;
                        }
                      }
                    }
                  }
                  else {
                    lVar20 = 5;
                    pbVar9 = pbVar18;
                    pbVar21 = (byte *)0x182493;
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar25 = *pbVar9 < *pbVar21;
                      bVar28 = *pbVar9 == *pbVar21;
                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar28);
                    bVar26 = false;
                    bVar25 = (!bVar25 && !bVar28) == bVar25;
                    if (!bVar25) {
                      lVar20 = 5;
                      pbVar9 = pbVar18;
                      pbVar21 = (byte *)0x16ac78;
                      do {
                        if (lVar20 == 0) break;
                        lVar20 = lVar20 + -1;
                        bVar26 = *pbVar9 < *pbVar21;
                        bVar25 = *pbVar9 == *pbVar21;
                        pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                      } while (bVar25);
                      if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b490;
                    }
                  }
                }
                else {
                  lVar20 = 4;
                  pbVar9 = pbVar18;
                  pbVar21 = (byte *)0x1663a6;
                  do {
                    if (lVar20 == 0) break;
                    lVar20 = lVar20 + -1;
                    bVar28 = *pbVar9 < *pbVar21;
                    bVar25 = *pbVar9 == *pbVar21;
                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                  } while (bVar25);
                  bVar26 = false;
                  bVar25 = (!bVar28 && !bVar25) == bVar28;
                  if (!bVar25) {
                    lVar20 = 5;
                    pbVar9 = pbVar18;
                    pbVar21 = (byte *)0x1857df;
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar26 = *pbVar9 < *pbVar21;
                      bVar25 = *pbVar9 == *pbVar21;
                      pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar25);
                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b446;
                  }
                }
              }
            }
            else {
              lVar20 = 8;
              pbVar18 = pbVar9;
              pbVar21 = (byte *)".zdebug_";
              do {
                if (lVar20 == 0) break;
                lVar20 = lVar20 + -1;
                bVar26 = *pbVar18 < *pbVar21;
                bVar25 = *pbVar18 == *pbVar21;
                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
              } while (bVar25);
              if ((!bVar26 && !bVar25) == bVar26) goto LAB_0012b3f7;
              bVar25 = false;
              bVar28 = DAT_00196f2c == 0 && DAT_0019346c == 0;
              if (bVar28) {
LAB_0012b2b0:
                bVar25 = false;
                bVar28 = DAT_00196f34 == 0;
                if (!bVar28) {
                  lVar20 = 10;
                  pbVar18 = pbVar9;
                  pbVar21 = (byte *)".eh_frame";
                  do {
                    if (lVar20 == 0) break;
                    lVar20 = lVar20 + -1;
                    bVar25 = *pbVar18 < *pbVar21;
                    bVar28 = *pbVar18 == *pbVar21;
                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                  } while (bVar28);
                  if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                }
                bVar25 = false;
                bVar28 = DAT_00196f78 == 0;
                if (bVar28) {
LAB_0012b31e:
                  bVar25 = false;
                  bVar28 = DAT_0019346c == 0;
                  if (bVar28) {
                    bVar25 = false;
                    bVar28 = DAT_00196f64 == 0;
                    if (!bVar28) {
                      lVar20 = 7;
                      pbVar18 = pbVar9;
                      pbVar21 = (byte *)".trace_";
                      do {
                        if (lVar20 == 0) break;
                        lVar20 = lVar20 + -1;
                        bVar25 = *pbVar18 < *pbVar21;
                        bVar28 = *pbVar18 == *pbVar21;
                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                      } while (bVar28);
                      if ((!bVar25 && !bVar28) == bVar25) {
                        bVar25 = (byte *)0xfffffffffffffff8 < pbVar9;
                        bVar28 = pbVar9 + 7 == (byte *)0x0;
                        lVar20 = 5;
                        pbVar18 = pbVar9 + 7;
                        pbVar21 = (byte *)0x1663a6;
                        do {
                          if (lVar20 == 0) break;
                          lVar20 = lVar20 + -1;
                          bVar25 = *pbVar18 < *pbVar21;
                          bVar28 = *pbVar18 == *pbVar21;
                          pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                          pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                        } while (bVar28);
                        if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b36f;
                        goto LAB_0012b3c0;
                      }
LAB_0012c5d2:
                      bVar25 = DAT_00196f74 == 0;
                      if (bVar25) goto LAB_0012ad90;
                      goto LAB_0012c536;
                    }
                    bVar25 = false;
                    bVar28 = DAT_00196f58 == 0 && DAT_00196f4c == 0;
                    if (bVar28) goto LAB_0012c5d2;
                    lVar20 = 7;
                    pbVar18 = pbVar9;
                    pbVar21 = (byte *)".trace_";
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar25 = *pbVar18 < *pbVar21;
                      bVar28 = *pbVar18 == *pbVar21;
                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar28);
                    if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012c5d2;
LAB_0012b36f:
                    bVar25 = false;
                    bVar28 = DAT_00196f58 == 0;
                    if (!bVar28) {
                      lVar20 = 7;
                      pbVar18 = pbVar9 + 7;
                      pbVar21 = (byte *)0x1826c0;
                      do {
                        if (lVar20 == 0) break;
                        lVar20 = lVar20 + -1;
                        bVar25 = *pbVar18 < *pbVar21;
                        bVar28 = *pbVar18 == *pbVar21;
                        pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                        pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                      } while (bVar28);
                      if ((!bVar25 && !bVar28) == bVar25) goto LAB_0012b3c0;
                    }
                    bVar26 = false;
                    bVar25 = DAT_00196f4c == 0;
                    if (bVar25) goto LAB_0012ad90;
                    lVar20 = 8;
                    pbVar9 = pbVar9 + 7;
                    pcVar14 = (char *)(byte *)0x1826ce;
                  }
                  else {
                    lVar20 = 7;
                    pbVar18 = pbVar9;
                    pbVar21 = (byte *)".trace_";
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar25 = *pbVar18 < *pbVar21;
                      bVar28 = *pbVar18 == *pbVar21;
                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar28);
                    bVar25 = (!bVar25 && !bVar28) == bVar25;
                    if (bVar25) goto LAB_0012b3c0;
LAB_0012c536:
                    bVar28 = false;
                    lVar20 = 0xe;
                    pbVar18 = pbVar9;
                    pbVar21 = (byte *)".gnu_debuglink";
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar28 = *pbVar18 < *pbVar21;
                      bVar25 = *pbVar18 == *pbVar21;
                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar25);
                    bVar26 = false;
                    bVar25 = (!bVar28 && !bVar25) == bVar28;
                    if (bVar25) goto LAB_0012b3c0;
                    lVar20 = 0x11;
                    pcVar14 = ".gnu_debugaltlink";
                  }
                  do {
                    if (lVar20 == 0) break;
                    lVar20 = lVar20 + -1;
                    bVar26 = *pbVar9 < (byte)*pcVar14;
                    bVar25 = *pbVar9 == *pcVar14;
                    pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                    pcVar14 = (char *)((byte *)pcVar14 + (ulong)bVar30 * -2 + 1);
                  } while (bVar25);
                  if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012ad90;
                }
                else {
                  lVar20 = 0xb;
                  pbVar18 = pbVar9;
                  pbVar21 = (byte *)".gdb_index";
                  do {
                    if (lVar20 == 0) break;
                    lVar20 = lVar20 + -1;
                    bVar25 = *pbVar18 < *pbVar21;
                    bVar28 = *pbVar18 == *pbVar21;
                    pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                    pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                  } while (bVar28);
                  bVar26 = false;
                  bVar25 = (!bVar25 && !bVar28) == bVar25;
                  if (!bVar25) {
                    lVar20 = 0xd;
                    pbVar18 = pbVar9;
                    pbVar21 = (byte *)".debug_names";
                    do {
                      if (lVar20 == 0) break;
                      lVar20 = lVar20 + -1;
                      bVar26 = *pbVar18 < *pbVar21;
                      bVar25 = *pbVar18 == *pbVar21;
                      pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                      pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                    } while (bVar25);
                    if ((!bVar26 && !bVar25) != bVar26) goto LAB_0012b31e;
                  }
                }
              }
              else {
                lVar20 = 0x11;
                pbVar18 = pbVar9;
                pbVar21 = (byte *)".gnu.linkonce.wi.";
                do {
                  if (lVar20 == 0) break;
                  lVar20 = lVar20 + -1;
                  bVar25 = *pbVar18 < *pbVar21;
                  bVar28 = *pbVar18 == *pbVar21;
                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                } while (bVar28);
                if ((!bVar25 && !bVar28) != bVar25) goto LAB_0012b2b0;
              }
            }
LAB_0012b3c0:
            FUN_00111440(param_1,uVar22,4);
          }
        }
        else if (uVar16 == 0x12) {
          puVar11 = (undefined8 *)FUN_001594b0();
          *puVar11 = puVar24;
          puVar11[1] = DAT_001934b0;
          DAT_001934b0 = puVar11;
        }
        else if (uVar16 == 2) {
          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 0x10;
          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;
        }
        else if (uVar16 == 0x11) {
          if (*(long *)(puVar24 + 0xe) != 4) {
            sprintf((char *)local_68,"%016lx");
            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
            error(uVar12,uVar22,local_68);
            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);
            error(uVar12,4);
            puVar24[0xe] = 4;
            puVar24[0xf] = 0;
          }
        }
        else if (uVar16 == 9) {
          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 8) + 8;
          if (*(long *)(puVar24 + 0xe) != lVar20) {
LAB_0012b6ee:
            sprintf((char *)local_68,"%016lx");
            uVar12 = dcgettext(0,"Section %d has invalid sh_entsize of %s\n",5);
            error(uVar12,uVar22,local_68);
            uVar12 = dcgettext(0,"(Using the expected size of %u for the rest of this dump)\n",5);
            error(uVar12,lVar20);
            *(long *)(puVar24 + 0xe) = lVar20;
          }
        }
        else {
          if (uVar16 != 4) goto LAB_0012b1ff;
          lVar20 = (ulong)(-(uint)(DAT_0019345c == 0) & 0xc) + 0xc;
          if (*(long *)(puVar24 + 0xe) != lVar20) goto LAB_0012b6ee;
        }
      }
LAB_0012ad90:
      uVar22 = uVar22 + 1;
      puVar24 = puVar24 + 0x14;
    } while (uVar22 < *(uint *)(param_1 + 100));
    if (DAT_00193494 == 0) {
      return 1;
    }
    if (*(uint *)(param_1 + 100) < 2) goto LAB_0012c296;
    pcVar14 = "\nSection Headers:\n";
  }
  pcVar14 = (char *)dcgettext(0,pcVar14,5);
  printf(pcVar14);
  if (DAT_0019345c == 0) {
    if (DAT_00196f50 == 0) {
      if (DAT_0019348c == 0) {
        pcVar14 = (char *)dcgettext(0,
                                    "  [Nr] Name              Type             Address           Offset\n"
                                    ,5);
        printf(pcVar14);
        pcVar14 = "       Size              EntSize          Flags  Link  Info  Align\n";
      }
      else {
        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);
        printf(pcVar14);
        pcVar14 = (char *)dcgettext(0,
                                    "       Type              Address          Offset            Link\n"
                                    ,5);
        printf(pcVar14);
        pcVar14 = "       Size              EntSize          Info              Align\n";
      }
    }
    else {
      pcVar14 = 
      "  [Nr] Name              Type            Address          Off    Size   ES Flg Lk Inf Al\n";
      if (DAT_0019348c != 0) {
        pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);
        printf(pcVar14);
        pcVar14 = "       Type            Address          Off    Size   ES   Lk Inf Al\n";
      }
    }
  }
  else {
    pcVar14 = "  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al\n";
    if (DAT_0019348c != 0) {
      pcVar14 = (char *)dcgettext(0,"  [Nr] Name\n",5);
      printf(pcVar14);
      pcVar14 = "       Type            Addr     Off    Size   ES   Lk Inf Al\n";
    }
  }
  pcVar14 = (char *)dcgettext(0,pcVar14,5);
  printf(pcVar14);
  if (DAT_0019348c == 0) {
    uVar22 = *(uint *)(param_1 + 100);
    puVar24 = *(uint **)(param_1 + 0x70);
    if (uVar22 != 0) {
LAB_0012ae50:
      uVar17 = 0;
LAB_0012b043:
      do {
        uVar16 = puVar24[1];
        if (uVar16 < 0x11) {
          if (uVar16 < 0xe) {
            if (uVar16 < 6) {
              if (uVar16 < 4) {
                if (uVar16 == 2) goto LAB_0012b074;
              }
              else {
LAB_0012bb47:
                uVar23 = puVar24[10];
                if (((uVar23 == 0) || (uVar22 <= uVar23)) ||
                   ((iVar7 = *(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4),
                    iVar7 != 2 && (iVar7 != 0xb)))) {
                  pcVar14 = "[%2u]: Link field (%u) should index a symtab section.\n";
                  goto LAB_0012b0a7;
                }
              }
            }
            else {
              if (uVar16 == 9) goto LAB_0012bb47;
              if ((uVar16 == 0xb) || (uVar16 == 6)) goto LAB_0012b074;
            }
            goto joined_r0x0012ae86;
          }
          uVar23 = puVar24[10];
          if (uVar23 != 0) {
            pcVar14 = "[%2u]: Unexpected value (%u) in link field.\n";
            goto LAB_0012b0a7;
          }
LAB_0012b0ca:
          uVar10 = 1L << ((byte)uVar16 & 0x3f);
          if ((uVar10 & 0x20804) != 0) goto LAB_0012aec8;
          if ((uVar10 & 0x5c060) == 0) {
            if ((uVar10 & 0x210) == 0) {
              if (uVar16 == 8) goto LAB_0012aef0;
              uVar10 = *(ulong *)(puVar24 + 2);
              if ((uVar10 & 0x40) == 0) goto LAB_0012bf7c;
              goto LAB_0012ae98;
            }
            uVar22 = puVar24[0xb];
            if (uVar22 == 0) {
              if ((ushort)(*(short *)(param_1 + 0x50) - 2U) < 2) goto LAB_0012aec8;
              uVar10 = *(ulong *)(param_1 + 0x80);
              if (uVar10 == 0) {
                uVar27 = 0;
                uVar29 = 1;
                pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);
LAB_0012c57f:
                lVar20 = 9;
                pbVar18 = (byte *)".rel.dyn";
                do {
                  if (lVar20 == 0) break;
                  lVar20 = lVar20 + -1;
                  uVar27 = *pbVar9 < *pbVar18;
                  uVar29 = *pbVar9 == *pbVar18;
                  pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                } while ((bool)uVar29);
                if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;
                uVar10 = *(ulong *)(param_1 + 0x80);
                if (uVar10 == 0) {
                  uVar27 = 0;
                  uVar29 = 1;
                  pbVar9 = (byte *)dcgettext(0,"<no-strings>",5);
                }
                else {
                  uVar15 = (ulong)*puVar24;
                  if (uVar15 < *(ulong *)(param_1 + 0x88)) {
                    uVar27 = CARRY8(uVar10,uVar15);
                    pbVar9 = (byte *)(uVar10 + uVar15);
                    uVar29 = pbVar9 == (byte *)0x0;
                  }
                  else {
                    uVar27 = 0;
                    uVar29 = 1;
                    pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);
                  }
                }
              }
              else {
                uVar15 = (ulong)*puVar24;
                if (*(ulong *)(param_1 + 0x88) <= uVar15) {
                  uVar27 = 0;
                  uVar29 = 1;
                  pbVar9 = (byte *)dcgettext(0,"<corrupt>",5);
                  goto LAB_0012c57f;
                }
                bVar25 = CARRY8(uVar10,uVar15);
                pbVar9 = (byte *)(uVar10 + uVar15);
                bVar28 = pbVar9 == (byte *)0x0;
                lVar20 = 9;
                pbVar18 = pbVar9;
                pbVar21 = (byte *)".rel.dyn";
                do {
                  if (lVar20 == 0) break;
                  lVar20 = lVar20 + -1;
                  bVar25 = *pbVar18 < *pbVar21;
                  bVar28 = *pbVar18 == *pbVar21;
                  pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
                  pbVar21 = pbVar21 + (ulong)bVar30 * -2 + 1;
                } while (bVar28);
                uVar27 = 0;
                uVar29 = (!bVar25 && !bVar28) == bVar25;
                if ((bool)uVar29) goto LAB_0012aec8;
              }
              lVar20 = 10;
              pbVar18 = (byte *)".rela.dyn";
              do {
                if (lVar20 == 0) break;
                lVar20 = lVar20 + -1;
                uVar27 = *pbVar9 < *pbVar18;
                uVar29 = *pbVar9 == *pbVar18;
                pbVar9 = pbVar9 + (ulong)bVar30 * -2 + 1;
                pbVar18 = pbVar18 + (ulong)bVar30 * -2 + 1;
              } while ((bool)uVar29);
              if ((!(bool)uVar27 && !(bool)uVar29) == (bool)uVar27) goto LAB_0012aec8;
              uVar22 = puVar24[0xb];
            }
            else if (uVar22 < *(uint *)(param_1 + 100)) {
              uVar16 = *(uint *)((ulong)uVar22 * 0x50 + *(long *)(param_1 + 0x70) + 4);
              bVar5 = 1;
              if (uVar16 < 0xf) {
                bVar5 = ~(byte)(0x4182L >> ((byte)uVar16 & 0x3f)) & 1;
              }
              if ((0x5fffffff < uVar16) || (bVar5 == 0)) goto LAB_0012aec8;
            }
            pcVar14 = "[%2u]: Info field (%u) should index a relocatable section.\n";
          }
          else {
LAB_0012bf87:
            uVar22 = puVar24[0xb];
            if (uVar22 == 0) goto LAB_0012aec8;
            pcVar14 = "[%2u]: Unexpected value (%u) in info field.\n";
          }
          uVar12 = dcgettext(0,pcVar14,5);
          warn(uVar12,uVar17,uVar22);
          goto LAB_0012aec8;
        }
        if (uVar16 == 0x6ffffff7) {
LAB_0012b074:
          uVar23 = puVar24[10];
          if (((uVar23 == 0) || (uVar22 <= uVar23)) ||
             (*(int *)((ulong)uVar23 * 0x50 + *(long *)(param_1 + 0x70) + 4) != 3)) {
            pcVar14 = "[%2u]: Link field (%u) should index a string section.\n";
LAB_0012b0a7:
            uVar12 = dcgettext(0,pcVar14,5);
            warn(uVar12,uVar17,uVar23);
            uVar16 = puVar24[1];
          }
        }
        else if (uVar16 < 0x6ffffff8) {
          if ((uVar16 < 0x13) || (uVar16 == 0x6ffffff6)) goto LAB_0012bb47;
        }
        else if (0x6ffffffc < uVar16) {
          if (uVar16 < 0x6fffffff) goto LAB_0012b074;
          if (uVar16 == 0x6fffffff) goto LAB_0012bb47;
        }
joined_r0x0012ae86:
        if (uVar16 < 0x13) goto LAB_0012b0ca;
        uVar10 = *(ulong *)(puVar24 + 2);
        if ((uVar10 & 0x40) == 0) {
          if (uVar16 < 0x60000000) {
LAB_0012bf7c:
            if ((uVar10 & 0x1000000) == 0) goto LAB_0012bf87;
            goto LAB_0012aec8;
          }
        }
        else {
LAB_0012ae98:
          if ((puVar24[0xb] == 0) || (*(uint *)(param_1 + 100) <= puVar24[0xb])) {
            uVar12 = dcgettext(0,"[%2u]: Expected link to another section in info field",5);
            warn(uVar12,uVar17);
          }
LAB_0012aec8:
          if (((*(ulong *)(param_1 + 0x10) < *(ulong *)(puVar24 + 8)) &&
              (puVar24[1] - 1 < 0x5fffffff)) && (puVar24[1] != 8)) {
            uVar12 = dcgettext(0,"Size of section %u is larger than the entire file!\n",5);
            warn(uVar12,uVar17);
          }
        }
LAB_0012aef0:
        printf("  [%2u] ",uVar17);
        if (DAT_0019348c == 0) {
          if (*(long *)(param_1 + 0x80) == 0) {
            lVar20 = dcgettext(0,"<no-strings>",5);
          }
          else {
            lVar20 = *(long *)(param_1 + 0x80) + (ulong)*puVar24;
            if (*(ulong *)(param_1 + 0x88) <= (ulong)*puVar24) {
              lVar20 = dcgettext(0,"<corrupt>",5);
            }
          }
          FUN_001122a0(0xffffffef,lVar20);
        }
        else {
          uVar12 = FUN_00113f30(param_1 + 0x80,param_1 + 0x88,puVar24);
          printf("%s\n      ",uVar12);
        }
        uVar12 = FUN_001176d0(param_1,puVar24[1]);
        pcVar14 = " %-15.15s ";
        if (DAT_00196f50 != 0) {
          pcVar14 = " %-15s ";
        }
        printf(pcVar14,uVar12);
        if (DAT_0019345c == 0) {
          if (DAT_00196f50 == 0) {
            if (DAT_0019348c == 0) {
              putc(0x20,stdout);
              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);
              printf("  %8.8lx",*(undefined8 *)(puVar24 + 6));
              printf("\n       ");
              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);
              printf("  ");
              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);
              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));
              printf(" %3s ",uVar12);
              printf("     %2u   %3u     %lu\n",(ulong)puVar24[10],(ulong)puVar24[0xb],
                     *(undefined8 *)(puVar24 + 0xc));
            }
            else {
              uVar12 = FUN_001176d0(param_1,puVar24[1]);
              printf("       %-15.15s  ",uVar12);
              FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);
              printf("  %16.16lx",*(undefined8 *)(puVar24 + 6));
              printf("  %u\n       ",(ulong)puVar24[10]);
              FUN_001116b0(*(undefined8 *)(puVar24 + 8),6);
              putc(0x20,stdout);
              FUN_001116b0(*(undefined8 *)(puVar24 + 0xe),6);
              printf("  %-16u  %lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));
            }
          }
          else {
            FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);
            printf(" %6.6lx",*(undefined8 *)(puVar24 + 6));
            printf(" %6.6lx",*(undefined8 *)(puVar24 + 8));
            printf(" %2.2lx",*(undefined8 *)(puVar24 + 0xe));
            if (DAT_0019348c == 0) {
              uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));
              printf(" %3s ",uVar12);
            }
            else {
              fwrite(&DAT_0016a396,1,2,stdout);
            }
            printf("%2u %3u ",(ulong)puVar24[10],(ulong)puVar24[0xb]);
            printf("%2lu\n",*(undefined8 *)(puVar24 + 0xc));
          }
        }
        else {
          FUN_001116b0(*(undefined8 *)(puVar24 + 4),6);
          printf(" %6.6lx %6.6lx %2.2lx",*(undefined8 *)(puVar24 + 6),*(undefined8 *)(puVar24 + 8),
                 *(undefined8 *)(puVar24 + 0xe));
          if (DAT_0019348c == 0) {
            uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));
            printf(" %3s ",uVar12);
          }
          else {
            fwrite(&DAT_0016a396,1,2,stdout);
          }
          uVar22 = puVar24[10];
          if (uVar22 < *(uint *)(param_1 + 100)) {
            if (DAT_0019348c == 0) {
              printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],
                     *(undefined8 *)(puVar24 + 0xc));
            }
            else {
              printf("%2u ");
              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));
            }
          }
          else {
            uVar6 = *(ushort *)(param_1 + 0x52);
            if (uVar6 == 0x12) {
LAB_0012c0c0:
              if (uVar22 == 0xff00) {
                pcVar14 = "BEFORE";
              }
              else {
                if (uVar22 != 0xff01) goto LAB_0012c012;
                pcVar14 = "AFTER";
              }
              if (DAT_0019348c == 0) goto LAB_0012c248;
              printf("<%s> ",pcVar14);
              printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));
            }
            else {
              if (0x12 < uVar6) {
                if (uVar6 != 0x3e) {
                  if (0x3e < uVar6) {
                    uVar6 = uVar6 - 0xb4;
                    goto joined_r0x0012c138;
                  }
                  if (uVar6 != 0x2b) goto LAB_0012c012;
                }
                goto LAB_0012c0c0;
              }
              if (uVar6 == 6) goto LAB_0012c0c0;
              if (uVar6 < 7) {
                uVar6 = uVar6 - 2;
joined_r0x0012c138:
                if (uVar6 < 2) goto LAB_0012c0c0;
              }
              else if (uVar6 == 0xb) goto LAB_0012c0c0;
LAB_0012c012:
              pcVar14 = "";
              if (DAT_0019348c == 0) {
LAB_0012c248:
                printf("%2u %3u %2lu\n",(ulong)uVar22,(ulong)puVar24[0xb],
                       *(undefined8 *)(puVar24 + 0xc));
              }
              else {
                pcVar14 = "";
                printf("%2u ");
                printf("%3u %2lu\n",(ulong)puVar24[0xb],*(undefined8 *)(puVar24 + 0xc));
              }
            }
            if (*pcVar14 == '\0') {
              uVar22 = puVar24[10];
              uVar12 = dcgettext(0,
                                 "section %u: sh_link value of %u is larger than the number of sections\n"
                                 ,5);
              warn(uVar12,uVar17,uVar22);
            }
          }
        }
        if (DAT_0019348c == 0) {
LAB_0012b030:
          uVar22 = *(uint *)(param_1 + 100);
          uVar16 = (int)uVar17 + 1;
          uVar17 = (ulong)uVar16;
          puVar24 = puVar24 + 0x14;
          if (uVar22 <= uVar16) break;
          goto LAB_0012b043;
        }
        uVar12 = FUN_0012a330(param_1 + 0x1f,param_1 + 0x52,*(undefined8 *)(puVar24 + 2));
        printf("       %s\n",uVar12);
        if ((*(byte *)((long)puVar24 + 9) & 8) == 0) goto LAB_0012b030;
        uVar12 = dcgettext(0,"compression header",5);
        lVar20 = FUN_001144a0(local_88,param_1 + 8,param_1 + 0x10,*(undefined8 *)(puVar24 + 6),1,
                              0x18,uVar12);
        if (lVar20 == 0) goto LAB_0012b030;
        FUN_0010ffa0(local_68,local_88,0x18,0x12bbf8);
        uVar22 = local_68[0];
        if (local_68[0] == 1) {
          printf("       ZLIB, ");
        }
        else {
          pcVar14 = (char *)dcgettext(0,"       [<unknown>: 0x%x], ",5);
          printf(pcVar14,(ulong)uVar22);
        }
        uVar16 = (int)uVar17 + 1;
        uVar17 = (ulong)uVar16;
        puVar24 = puVar24 + 0x14;
        FUN_001116b0(local_60,6);
        printf(", %lu\n",local_58);
        uVar22 = *(uint *)(param_1 + 100);
      } while (uVar16 < uVar22);
      goto LAB_0012bca8;
    }
  }
  else {
    pcVar14 = (char *)dcgettext(0,"       Flags\n",5);
    printf(pcVar14);
    uVar22 = *(uint *)(param_1 + 100);
    puVar24 = *(uint **)(param_1 + 0x70);
    if (uVar22 != 0) goto LAB_0012ae50;
LAB_0012bca8:
    if (DAT_0019348c != 0) {
      return 1;
    }
  }
  pcVar14 = (char *)dcgettext(0,
                              "Key to Flags:\n  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),\n  L (link order), O (extra OS processing required), G (group), T (TLS),\n  C (compressed), x (unknown), o (OS specific), E (exclude),\n  "
                              ,5);
  printf(pcVar14);
  sVar1 = *(short *)(param_1 + 0x52);
  if (((ushort)(sVar1 - 0xb4U) < 2) || (sVar1 == 0x3e)) {
    pcVar14 = "l (large), ";
  }
  else {
    pcVar14 = "y (purecode), ";
    if (sVar1 != 0x28) {
      if (sVar1 != 0x14) goto LAB_0012bd12;
      pcVar14 = "v (VLE), ";
    }
  }
  pcVar14 = (char *)dcgettext(0,pcVar14,5);
  printf(pcVar14);
LAB_0012bd12:
  puts("p (processor specific)");
  return 1;
}

